batch-file - 如何在bash脚本的批处理文件的参数中包含管道字符?

标签 batch-file cygwin

我有一个 shell 脚本,我想执行这一行:

qtvars.bat vsstart "qt.sln" /BUILD "Debug|Win32"

这很好用(虽然我不得不修改 qtvars.bat ,但这无关紧要)。问题是我希望执行的命令在一个变量中:
编辑:这也不起作用,如果我将它输入到 bash 中。以前我把它输入到 cmd.exe ,这很难进行公平的比较。
command="qtvars.bat"
args="vsstart"

$command $args "qt.sln" /BUILD "Debug|Win32"

现在它在管道上窒息了!我收到这条消息:
'Win32' is not recognized as an internal or external command,
operable program or batch file.

我已经尝试了多种转义引号和/或管道的形式,但都无济于事。有趣的是,当它是可执行文件而不是批处理文件时,它可以工作,例如:
command="devenv.exe"
args=""

$command $args "qt.sln" /BUILD "Debug|Win32"

感谢您的任何想法。

最佳答案

我知道你用 ^ 字符“转义”了批处理文件中的管道字符,所以......

回声^|这里有一些文字^|

会显示...

|一些文字在这里|

我不知道在这种情况下这是否对您有帮助?也许尝试在每个管道字符前加上 ^ 看看会发生什么? :-)

关于batch-file - 如何在bash脚本的批处理文件的参数中包含管道字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/570851/

相关文章:

batch-file - 如何使用 sox 将 .sph 文件批量转换为 .wav

c++ - 使用在 CMD 中指定的变量或从另一个程序的系统调用从命令行调用 c++

batch-file - 当用户单击批处理脚本中的关闭按钮时,我可以弹出消息吗?

windows - 如何在 Windows 上的 Cygwin 中运行 crontab?

windows - 在 Windows 上安装 Ansible

batch-file - 将变量设置为命令的值

git - 将 Git ID 存储在批处理脚本的变量中

c - Cygwin 中的内存泄漏检测工具

Cygwin 路径到/cygdrive/C/Program Files (x86)/GnuWin32 目录?

gcc - Cygwin 上没有 OpenCL,但 Windows 上安装了 - 如何安装?