Using PSEXEC returns no output from the remote task

Derek Ekins picture Derek Ekins · Aug 3, 2009 · Viewed 13.3k times · Source

I am using psexec to run an exe on a server. The command runs ok, but there is no output on my local console.

This is the command I am using:

psexec.exe \\my-machine ping localhost

which results in:

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

ping exited with error code 0.

if I try to run this localy however, it works fine

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.

Answer

Derek Ekins picture Derek Ekins · Aug 3, 2009

It turns out that (at least in this case) you need to use the fully qualified machine name when kicking off psexec. I haven't figured out why this is but it does the trick.

psexec.exe \\my-machine.mydomain.com ping localhost

and now all the output of the command is returned.