Capturando la salida del proceso remoto del psexec de sysinternal

19

Estoy tratando de capturar la salida del proceso remoto desde psexec (es decir, no la propia salida de psexec). Entonces, por ejemplo, podría ejecutar "ipconfig" e imprimir el resultado en un archivo de registro.

Yo he tratado:

psexec \\myserver ipconfig > output.log
psexec \\myserver ipconfig >> output.log
psexec \\myserver ipconfig 2> output.log
psexec \\myserver ipconfig > output.log 2>&1

El último solo da la salida psexec.

No estoy seguro de cuáles son las diferencias entre todos estos, pero los he visto sugeridos en mi búsqueda de la respuesta en otra parte.

¿Alguien puede darme una línea de comando de ejemplo que capture la salida de ipconfig en un archivo?

Edición 1: quiero que el archivo de registro se guarde en la máquina local, no en la remota.

Edición 2:

Esto es lo que obtengo al ejecutar "psexec \\ myserver ipconfig":

C: \ TempDll> psexec \\ myserver ipconfig

PsExec v1.95 - Ejecutar procesos de forma remota
Copyright (C) 2001-2009 Mark Russinovich
Sysinternals - www.sysinternals.com


ipconfig salió en myserver con el código de error 0.

C: \ TempDll>
joshcomley
fuente
¿Desea guardar el registro en la máquina local o remota?
Alex J
1
Hm, "psexec \\ myserver ipconfig> output.log" funciona en mi máquina
splattne

Respuestas:

3

¿Posiblemente un error en PsExec en v1.95?

Tengo v1.94 y obtengo el resultado correcto, pero acabo de descargar la última copia y tengo los mismos problemas que tú.

EDITAR:

PsExec en mi SkyDrive público

RhysSH
fuente
D'oh !! ¿Podría vincular una copia de 1.94 aquí? Parece que no puedo encontrar una copia en línea en ningún lado. Cada vez que descargo "v1.94" en realidad me da 1.95 :(
joshcomley
FYI: Está en v1.96 a partir del 29/06.
Chris
3

Espero que esto pueda ayudar a alguién. Pude ejecutar PSExec con el siguiente comando en Windows 10 y una instancia remota de Windows 10.

psexec \\ipaddress cmd /c "ipconfig>c:\Tools\output.txt"

Mando

IanC
fuente
Esto funcionó para mí en Windows 10 LTSB. Gran sugerencia psexec -s -d "cmd /C ipconfig" > outputfile.txt 2>&1
TheIncorrigible1
1

Solo tenga cuidado en qué carpeta desea guardar el archivo output.log.

Almacenar output.log localmente:
psexec \\ serverIP ipconfig> c: \ output.log

Almacene output.log en una máquina remota:
psexec \\ serverIP ipconfig> \\ ipaddress \ c $ \ output.log

psexec ... > output.log sobrescribirá el archivo output.log en caso de que exista.
psexec ... >> output.log agregará la salida al final.

También puede ejecutar psexec \\ serverIP cmd , cambiar su directorio en una máquina remota y simplemente ejecutar ipconfig> output.log

Jindrich
fuente
Gracias Roy, pero todo lo que obtengo es un archivo output.log en blanco, igual que con los ejemplos que probé anteriormente :(
joshcomley
¿Obtiene algo si ejecuta psexec \\ serverip ipconfig?
Jindrich
@Roy: he actualizado mi pregunta con la respuesta a eso en la parte inferior. Tal vez algo más profundo está yendo mal aquí ...
Joshcomley
1

La única forma que encontré es crear un script de murciélago rápido:

psexec %1 %2

O reemplace %2con el comando / args que desee.

Ejecutar con psexec remoto

\\systemname systeminfo | more
Ray Barbieri
fuente
1

Si desea guardar la salida localmente en la máquina remota. Puedes usar el siguiente comando. psexec \ myserver cmd / c "ipconfig> output.log"

Si desea redirigir la salida de la máquina remota a la máquina alojada. puede usar el siguiente comando psexec \ myserver cmd / c "ipconfig> \ localmachine \ location \ output.log"

AbhishekTiwari
fuente
0

Tuve el mismo problema y tuve que decirle a PSEXEC que se ejecutara como usuario administrador en la máquina remota:

psexec \\serverIP -u DOMAINNAME\username -p PaSsWoRd ipconfig /all > c:\output.log

fuente
0

La única vez que necesita especificar un nombre de usuario y contraseña con PSExec es si necesita extraer datos de un recurso compartido de red. Sin embargo, lo recomiendo encarecidamente, ya que la contraseña se envía en texto sin formato, lo que significa que cualquiera que escuche tráfico ahora tiene su nombre de usuario y contraseña.


fuente
0

Descubrí que usar un FQDN para el nombre del servidor resolvió mi problema.

MattB
fuente
Eso es bueno, pero no hay indicios de que esto tenga algo que ver con el caso del OP.
HopelessN00b