我必须使用Cygwin在Windows中运行一些shell脚本。我可以使用%BASH% --login -i "/cygdrive/d/script.sh"
来实现这一点,其中%BASH%
是Windows中设置为C:\cygwin\bin\bash.exe
的环境变量。
上面的脚本执行没有任何问题。但是当.sh文件中有Cygwin环境变量时,它就不起作用了。
例如,我创建了一个Cygwin环境变量$EXE_PATH = /cygdrive/d/somepath/dir
。在我的脚本里面,行是
$EXE_PATH/some.exe -f /cygdrive/d/password.txt
每次运行脚本时,此行都有错误。
错误与未找到some.exe/password.txt
有关。
如果我从Cygwin终端运行相同的命令,它可以正常工作。 /cygdrive
是否有问题?
这是脚本
#!/bin/sh
#TESTLEELA=/cygdrive/d
echo simple shell script
echo $EXE_PATH
$EXE_PATH/runube.exe -f $TESTLEELA/password.txt DVRP910 *ALL R0006P XJDE0001 QBATCH B H S //NASRVNY1
答案 0 :(得分:0)
更改行
$EXE_PATH = /cygdrive/d/somepath/dir
到
EXE_PATH=/cygdrive/d/somepath/dir (in cygwin shell script)