如何在 cmd 上的 PsExec 输出中找到 /i "String"

How find /i "String" on PsExec output on cmd

我想 运行 使用 PsExec.exe 的远程命令并分析输出以了解它是否成功:

PsExec.exe -i -s -d \60.60.43.3 -u MYDOMAIN\User -p 12345678 calc.exe | find /i "ID"

If %errorlevel% equ 0 echo OK
If %errorlevel% equ 1 echo NO

Pause

我总是得到 "NO" 作为输出。尽管我可以看到输出中有 "ID" 并且 PsExec 命令成功。

验证它的正确方法是什么?

PsExec returns 错误输出流的 ID (2),将错误流与正常输出合并 2>&1

PsExec.exe -i -s -d \60.60.43.3 -u MYDOMAIN\User -p 12345678 calc.exe 2>&1| find /i "ID"
If %errorlevel% equ 0 echo OK
If %errorlevel% equ 1 echo NO
Pause