使用PSEXEC不返回远程任务的输出

Der*_*ins 7 psexec

我正在使用psexec在服务器上运行exe.该命令运行正常,但我的本地控制台上没有输出.

这是我使用的命令:

psexec.exe \\my-machine ping localhost
Run Code Online (Sandbox Code Playgroud)

这导致:

PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com

ping exited with error code 0.
Run Code Online (Sandbox Code Playgroud)

如果我尝试运行这个localy,但它工作正常

psexec.exe \\localhost ping localhost

PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com



Pinging my-machine.mydomain.com [1.1.1.1] with 32 bytes of data:

Reply from 1.1.1.1: bytes=32 time=2ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128

Ping statistics for 1.1.1.1:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 2ms, Average = 0ms
ping exited on localhost with error code 0.
Run Code Online (Sandbox Code Playgroud)

Der*_*ins 4

事实证明(至少在这种情况下)您在启动 psexec 时需要使用完全限定的计算机名称。我还没弄清楚为什么会这样,但它确实有效。

psexec.exe \\my-machine.mydomain.com ping localhost
Run Code Online (Sandbox Code Playgroud)

现在命令的所有输出都已返回。