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

批处理文件,检查是否返回错误,然后做些什么?

  •  0
  • Carson  · 技术社区  · 6 年前

    对于批处理文件,我正在尝试运行命令,如果命令返回错误,请使用go to为每个命令尝试其他命令……但是脚本不断失败并出现错误……但现在不应该这样,至少如果最后一个goto不起作用,它应该进入一个无止境的循环。

    我读过,检查是否有错误,这是…

    IF %ERRORLEVEL% NEQ 0 (
        GOTO tryInRoot
    )
    

    但我不太确定,有什么帮助吗?

    grunt precommit
    IF %ERRORLEVEL% NEQ 0 (
        GOTO tryInRoot
    )
    
    :tryInRoot
        cd mow\client && grunt precommit
        IF %ERRORLEVEL% NEQ 0 (
            GOTO tryInTrunk
        )
    
    :tryInTrunk
        cd client && grunt precommit
            IF %ERRORLEVEL% NEQ 0 (
            GOTO whenInMapManager
        )
    
    :whenInMapManager
        cd ..
        IF EXIST "Gruntfile.js" (
            GOTO leavingMapManager
        ) ELSE (
            GOTO whenInMapManager
        )
    :leavingMapManager
        cd ..
        cd mow\client && grunt precommit
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Carson    6 年前

    使用 ||

    ||

    CALL grunt precommit || cd mow\client && grunt precommit || cd client && grunt precommit || GOTO whenInMapManager