Articles

Use PSEXEC para ejecutar comandos remotos

Nota: Este artículo fue escrito originalmente en reich-consulting.net. Reich Web Consulting ha reducido su enfoque a la web y ya no ofrece servicios de soporte técnico, por lo que hemos trasladado todo nuestro contenido de soporte técnico fuera del sitio. Esperamos que encuentre este artículo útil. Se proporciona TAL CUAL, y ya no proporcionaremos apoyo sobre este tema.,

Hay muchas instancias en la administración de una red cuando se hace necesario, o al menos más conveniente, poder ejecutar comandos en un equipo remoto sin la sobrecarga de iniciar una sesión de Escritorio remoto completa.

hasta que llegó la comunicación remota de PowerShell, no había una forma nativa de ejecutar comandos remotos desde Windows, e incluso ahora la comunicación remota de PS no es exactamente intuitiva. Ahí es donde entra PSEXEC.,

PSEXEC es una utilidad de un desarrollador llamado Mark Russinovich y su compañía SysInternals (adquirida desde hace mucho tiempo por Microsoft) que le permite ejecutar comandos en un sistema remoto. Todo lo que necesita es compartir archivos e impresiones habilitadas en el sistema remoto y, por supuesto, los permisos de usuario adecuados para ejecutar el comando.

Aquí hay un ejemplo rápido. Digamos que solo quiero abrir una línea de comandos a otro equipo:

psexec \\workstation1 cmd

esto me dará un shell de comandos (o DOS prompt si lo prefiere) al workrstation1 del equipo. Pero eso es bastante simplista., Probemos un ejemplo más complicado.

he escrito un archivo por lotes para implementar algún software, y se ve un poco como esto:

@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%

para ejecutar mi archivo por lotes en un equipo remoto usando PSEXEC, podría usar el siguiente comando:

psexec \\workstation1 -c InstallPanda.bat

el primer argumento \\workstation1, es el nombre del equipo en el que el comando debe ser ejecutado. El segundo argumento-c, especifica que el archivo debe copiarse en el equipo remoto y ejecutarse desde allí. Por supuesto, el argumento final InstallPanda.bat es el comando que quiero ejecutar.,

pero espera, ¡hay más! Si quería ejecutar el comando en varios equipos a la vez, puedo agregar los nombres de esos equipos a un archivo de texto y llamar a:

psexec @computerlist.txt -c InstallPanda.bat

he estado usando estos comandos psexec como este como un pobre despliegue de software también durante años. Para descargar PSEXEC y para una revisión completa de los parámetros y características de PSEXEC, visite la página de inicio de PSEXEC en Microsoft.com.