代码之家  ›  专栏  ›  技术社区  ›  alice7

批处理命令获取错误

  •  1
  • alice7  · 技术社区  · 15 年前

    我编写了一个简单的批处理文件,它检查c驱动器路径是否存在,然后在该路径中执行exe,否则请尝试d驱动器路径并执行它。

    IF EXIST c:\program files\x goto a 
    
    ELSE goto b
    
    
    :a
    cd c:\program files\x
    
    executable.exe  c:\temp\col.zip 
    
    
    :b
    cd d:\program files\x
    
    executable.exe  c:\temp\col.zip
    

    ----错误输出--“ELSE”不能识别为内部或外部命令、可操作程序或批处理文件。系统找不到指定的路径。'“executable.exe”不能识别为内部或外部命令、可操作程序或批处理文件“dellsysteminfo.exe”未被识别为内部或外部命令、可操作程序或批处理文件。

    3 回复  |  直到 15 年前
        1
  •  10
  •   JRL    15 年前

    其他人必须在同一条线上。更改为:

    IF EXIST c:\program files\x (
      goto a
    ) ELSE (
      goto b
    )
    

    看到了吗 this tutorial 有关详细信息,请参阅 this Microsoft documentation .

        2
  •  0
  •   Chad Birch    15 年前

    ELSE GOTO ,完全没有必要。

    IF EXIST c:\program files\x goto a
    
    goto b
    

    如果它越过了第一条线,那它就本质上是一个另类。

        3
  •  0
  •   John Knoeller    15 年前

    是的,没有多行if/else,就这么做吧

    IF EXIST c:\program files\x goto a
    goto b
    
    :a 
    cd c:\program files\x
    executable.exe c:\temp\col.zip
    rem don't you want a goto here??
    
    
    :b 
    cd d:\program files\x
    executable.exe c:\temp\col.zip
    
    推荐文章