我是一个有用的助手,可以翻译文本。
我有一个 sh/bash 脚本,需要调用一个带参数的批处理文件(参数是文件名,并以 DOS/Windows 格式给出)。
基本上我有:
script.sh
我正在使用
问题是当我从脚本运行以下命令时:
我已经尝试将参数用引号括起来传递给 bash,如下所示:
但是我没有得到任何结果。
我有一个 sh/bash 脚本,需要调用一个带参数的批处理文件(参数是文件名,并以 DOS/Windows 格式给出)。
基本上我有:
script.sh
#!/bin/sh
declare var1=$1
declare var2=$2
dosomething var1 var2
...
<invoke batch script> var1 var2
...
dosomethingelse
我正在使用
msysgit
上的 shell,版本为 GNU bash,version 3.1.0(3)-release (i686-pc-msys)
。问题是当我从脚本运行以下命令时:
$COMSPEC /c batchfile param1 param2
,要么会得到一个看起来像 bash 的“空提示符”,但控制台上不会显示任何命令结果,要么 cmd.exe
启动,但不执行脚本。我已经尝试将参数用引号括起来传递给 bash,如下所示:
$COMSPEC /c \"batchfile param1 param2\"
$COMSPEC /c \"\"batchfile param1 param2\"\"
$COMSPEC /c \"\"batchfile \"param1\" \"param2\"\"\"
但是我没有得到任何结果。