如何将参数传递给Windows上运行在MinGW下的bash脚本

如何将参数传递给Windows上运行在MinGW下的bash脚本,windows,bash,shell,mingw,Windows,Bash,Shell,Mingw,我有一个包含两个参数的bash脚本 在OS X上,我可以按如下方式调用脚本: ./my-script arg1 arg2 my-script arg1 arg2 bash my-script arg1 arg2 这两个参数都传递给脚本 我已在Windows上安装了MinGW,当我按如下方式调用脚本时: ./my-script arg1 arg2 my-script arg1 arg2 bash my-script arg1 arg2 参数不会传递给脚本 但是,如果我按如下方式调用它:

我有一个包含两个参数的bash脚本

在OS X上,我可以按如下方式调用脚本:

./my-script arg1 arg2
my-script arg1 arg2
bash my-script arg1 arg2
这两个参数都传递给脚本

我已在Windows上安装了MinGW,当我按如下方式调用脚本时:

./my-script arg1 arg2
my-script arg1 arg2
bash my-script arg1 arg2
参数不会传递给脚本

但是,如果我按如下方式调用它:

./my-script arg1 arg2
my-script arg1 arg2
bash my-script arg1 arg2
参数被传递给脚本


是否有另一种方法可以传递参数而不必这样做?

在OS X/Linux中,终端本身是可以处理shell脚本的。但是在windows的情况下,终端不使用bash,这就是为什么您希望安装mingw来获得bash本身。因此,如果您想要执行scipt,您需要执行bash,然后输入脚本。因此,在中,您必须给出
bash我的脚本arg1 arg2
。在windows资源管理器中,您可以将*.sh扩展名设置为bash,因此通过单击脚本,它将执行bash。但是您不能为脚本提供参数。总之,如果不给出
bash
,就不可能执行shell脚本


对于windows,我的建议是使用新的或旧的脚本

感谢@Shanoop的澄清。