从Windows PowerShell运行bash脚本

rur96b6h  于 2023-04-06  发布在  Shell
关注(0)|答案(6)|浏览(485)

在cygwin中,我可以只执行./script.shargs,但这会在PowerShell的记事本中打开脚本文件。
我需要做些什么才能让它执行?

dfddblmv

dfddblmv1#

现在Windows 10上有一个“原生”解决方案,在Windows上启用Bash后,您可以通过键入bash进入Bash shell:

您可以运行像bash ./script.sh这样的Bash脚本,但请记住,C驱动器位于/mnt/c,并且外部硬盘驱动器无法挂载。因此,您可能需要更改脚本,以便与Windows兼容。
此外,即使作为root,在/mnt中移动文件时,您仍然可以获得拒绝的权限,但您在/文件系统中拥有完整的root功能。
另外,请确保您的shell脚本的格式为Unix样式,否则可能会出现错误。

9udxz4iz

9udxz4iz2#

您应该将该脚本作为运行的 *NIX shell的参数,相当于 *NIXish

sh myscriptfile
9gm1akwq

9gm1akwq3#

如果将扩展名.SH添加到环境变量PATHEXT,则可以仅使用带参数的脚本名称从PowerShell运行shell脚本:

PS> .\script.sh args

如果您将脚本存储在PATH环境变量中包含的目录中,则可以从任何位置运行它,并省略扩展名和路径:

PS> script args

注意:sh.exe或其他 *nix shell必须与.sh扩展名相关联。

oxosxuxt

oxosxuxt4#

它也可以通过将gitbash C:\Program Files\git\bin\bash and sh导出到Windows的环境变量来运行。
path var的Advance部分,请添加C:\Program Files\git\bin\,这将使git-bash的bashsh可以从window cmd执行。
重新启动Powershell,然后运行shell文件
bash shellscript.shsh shellscript.sh

oprakyz7

oprakyz75#

最简单的方法(Windows10)

./your_script.sh

但您必须启用在PowerShell See Here上运行的脚本

sbtkgmzw

sbtkgmzw6#

正如ghost21blade所建议的,您可以使用./your_script.sh
此外,您可以将“C:\Program Files\Git\bin”添加到用户环境变量中的Path。在这种情况下,您将能够执行sh your_script.shbash your_script.sh

相关问题