我一直在尝试做一些脚本,但我似乎无法理解这个错误。
bash: /test.sh: No such file or directory
基本上,我想使用带有test.sh
和bash
选项的-c
来运行脚本-l
:
bash -l -c ~/opt/ct/src/test.sh
但是这整行是从位于与test.sh
相同的目录中的Windows批处理文件(.cmd)调用的。我正在使用64位Cygwin(但我也安装了MinGW)。我已经确保文件路径指向bash.exe
(做了一个设置的PATH)并且它是正确的,就像shebang一样。我也在脚本上做了dos2unix
。
为什么有任何想法?我所写的这条线在Cygwin完美无缺。
答案 0 :(得分:0)
我发现了问题。
我知道很久以前我在Windows Path变量中添加了MinGW的路径。似乎当我做bash
时,它实际上运行的是MinGW而不是Cygwin(使用which bash.exe
进行验证)。
我删除了通往MinGW的路径,瞧,它有效。
故事的道德:永远不要在Path变量中放置两条指向两个同名程序的路径!