There are many instances in managing a network when it becomes neccessary, or at least more convenient, to be able to execute commands on a remote computer without the overhead of launching a full-fledged Remote Desktop session.
Until PowerShell Remoting came along there wasn’t a native way to run remote commands from Windows, and even now PS Remoting isn’t exactly intuitive. That’s where PSEXEC comes in.
PSEXEC is a utility from a developer named Mark Russinovich and his company SysInternals (long since purchased by Microsoft) that allows you to execute commands on a remote system. All you need is File and Print Sharing enabled on the remote system, and of course the appropriate user permissions to execute the command.
Here’s a quick example. Let’s say I just want to open a command line to another computer:
psexec \\workstation1 cmd
This will give me a command shell (or DOS prompt if you prefer) to the computer workrstation1. But that’s pretty simplistic. Let’s try a more complicated example.
I’ve written a batch file to deploy some software, and it looks a little something like this:
@REM InstallPanda.bat - Installs Panda Cloud Security Client @ECHO OFF ECHO Installing Panda Cloud Security Client... msiexec \\fileserver\Panda\waagent.msi /qn ECHO Installation completed with error code %ERRORLEVEL%
To run my batch file on a remote computer using PSEXEC, I could use the following command:
psexec \\workstation1 -c InstallPanda.bat
The first argument \\workstation1, is the name of the computer on which the command should be executed. The second argument -c, specifies that the file should be copied to the remote computer and executed from there. Of course the final argument InstallPanda.bat is the command I want to execute.
But wait, there’s more! If I wanted to execute the command on multiple computers at once, I can add the names of those computers to a text file and call:
psexec @computerlist.txt -c InstallPanda.bat
I’ve been using this psexec commands just like this as a poor man’s software deployment too for years. To download PSEXEC and for a full run-down of PSEXEC’s parameters and features, visit the PSEXEC homepage on Microsoft.com.