【问题标题】:Why does this simple Windows bat file give error "Syntax incorrect"?为什么这个简单的 Windows bat 文件会给出错误“语法不正确”?
【发布时间】:2015-04-22 19:20:42
【问题描述】:

这是在 Windows 7 中。这是我的简单 bat 文件,用于测试参数是否存在:

if [%1] EQU [] (
    echo No parameter given; usage: testparam <something>
    exit
) ELSE (
    echo You gave parameter: %1
)

当我运行它(不带参数)时,我收到以下错误消息:

The syntax of the command is incorrect.

谁能告诉我有什么问题?许多其他示例都有这种结构...

【问题讨论】:

    标签: batch-file window


    【解决方案1】:

    此问题是由于缺少参数的 echo 语句中缺少引号引起的

    因为您没有在参数周围加上引号,cmd 将看到 something> 读取输入”,因为“something>”在 Windows 中不是有效的文件名,它会说您使用了无效的文件名语法

    如何解决问题:

    echo "No parameter given; usage: testparam <something>"
    

    【讨论】:

    • Close :-) 实际上,&lt;something 是有效的语法,但除非找到名为“something”的文件,否则它会引发错误。实际的语法错误是尾随的&gt;,它被视为缺少所需目标文件的输出重定向。引用输出的另一种方法是转义特殊字符:echo ..... ^&lt;something^&gt;
    • 非常感谢,成功了...Windows 批处理文件是真正的 PITA!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-22
    相关资源
    最近更新 更多