在一个需要在Win 200x和Win7环境下运行的DOS批处理脚本中,我需要将特定字符(用引号括起来)传递给另一个可执行文件;例如:
很遗憾,我需要将管道符号指定为分隔符(这是必须的)。我本来以为以下内容会起作用:
但是当我运行脚本时,对于这一行我根本看不到任何输出(例如,如果我用一个不存在的名称替换“doparse”,也没有错误消息)。我尝试过各种转义字符的组合,但无法让它工作。这有可能吗?(不幸的是必须通过批处理脚本完成)。谢谢。
doparse -delimeter "$"
一般情况下这样做:
CALL CMD /C "doparse -delimeter "$""
很遗憾,我需要将管道符号指定为分隔符(这是必须的)。我本来以为以下内容会起作用:
CALL CMD /C "doparse -delimeter "^|""
但是当我运行脚本时,对于这一行我根本看不到任何输出(例如,如果我用一个不存在的名称替换“doparse”,也没有错误消息)。我尝试过各种转义字符的组合,但无法让它工作。这有可能吗?(不幸的是必须通过批处理脚本完成)。谢谢。
CMD /C
?这只有在旧版本的DOS系统中才需要,因为它不支持通过CALL语法来调用另一个批处理文件。同时,在使用CMD /C
命令时并不需要对参数进行引号包裹,你可能混淆了sh -c
命令,它需要对参数进行一次引号包裹。 - Neil