如何获取使用 PSEXEC 命令启动的批处理的 return 代码?

How to get the return code of a batch started with the PSEXEC command?

我使用 PSEXEC 命令在远程计算机上启动批处理文件:

psexec \remotemachine -s -d cmd.exe /c c:\test_dir\build_dummy.bat

build_dummy.bat脚本:

    @echo off
    SETLOCAL EnableDelayedExpansion
    >output_build_bummy.bat.log (
    rem just print something into an output file

    echo.
    echo This is a dummy batch script 

    rem close the file output
    )
    EXIT /B -12345

我想要 psexec returns 代码 -12345 但是,我只得到启动的进程 ID cmd.exe。

如何获取错误代码?

任何命令的错误代码都存储在%errorlevel%变量中。只需输入 echo %errorlevel% 即可。

我发现如果我在 psexec 调用中省略选项 -d 那么 psexec returns 正是我需要的 - 我的批处理脚本的退出代码 :)