Capture de la sortie du processus distant à partir du psexec de sysinternal

19

J'essaie de capturer la sortie du processus distant depuis psexec (c'est-à-dire pas la propre sortie de psexec). Ainsi, par exemple, je pourrais exécuter "ipconfig" et imprimer la sortie dans un fichier journal.

J'ai essayé:

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

Le dernier donne juste la sortie psexec.

Je ne sais pas quelles sont les différences entre tous ces éléments, mais je les ai vus suggérés ailleurs dans ma recherche de la réponse.

Quelqu'un peut-il me donner un exemple de ligne de commande qui capturera la sortie d'ipconfig dans un fichier ??

Edit 1: Je veux que le fichier journal soit enregistré sur la machine locale, pas sur la machine distante.

Modifier 2:

Voici ce que j'obtiens en exécutant "psexec \\ myserver ipconfig":

C: \ TempDll> psexec \\ myserver ipconfig

PsExec v1.95 - Exécuter des processus à distance
Copyright (C) 2001-2009 Mark Russinovich
Sysinternals - www.sysinternals.com


ipconfig est sorti sur myserver avec le code d'erreur 0.

C: \ TempDll>
joshcomley
la source
Voulez-vous que le journal soit enregistré sur la machine locale ou distante?
Alex J
1
Hm, "psexec \\ myserver ipconfig> output.log" fonctionne sur ma machine
splattne

Réponses:

3

Peut-être un bogue dans PsExec en v1.95?

J'ai la v1.94 et j'obtiens bien la sortie mais je viens de télécharger la dernière copie et j'ai les mêmes problèmes que vous.

ÉDITER:

PsExec sur mon SkyDrive public

RhysSH
la source
D'oh !! Pourriez-vous lier une copie de 1.94 ici? Je n'arrive pas à trouver de copie en ligne nulle part. Chaque fois que je télécharge "v1.94", cela me donne en fait 1,95 :(
joshcomley
FYI: Il est à v1.96 en date du 29/06.
Chris
3

J'espère que cela peut aider quelqu'un. J'ai pu exécuter PSExec avec la commande suivante sur Windows 10 et une instance distante de Windows 10.

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

Commander

IanC
la source
Cela a fonctionné pour moi sur Windows 10 LTSB. Grande suggestion. psexec -s -d "cmd /C ipconfig" > outputfile.txt 2>&1
TheIncorrigible1
1

Faites juste attention dans quel dossier voulez-vous enregistrer le fichier output.log.

Stockez output.log localement:
psexec \\ serverIP ipconfig> c: \ output.log

Stockez output.log sur une machine distante:
psexec \\ serverIP ipconfig> \\ ipaddress \ c $ \ output.log

psexec ... > output.log écrasera le fichier output.log s'il existe.
psexec ... >> output.log ajoutera la sortie à la fin.

Vous pouvez également exécuter psexec \\ serverIP cmd , modifier votre répertoire sur une machine distante et simplement exécuter ipconfig> output.log

Jindrich
la source
Merci Roy, mais tout ce que je reçois est un fichier output.log vierge, le même que pour les exemples que j'ai essayés ci-dessus :(
joshcomley
Vous obtenez quelque chose si vous exécutez psexec \\ serverip ipconfig?
Jindrich
@Roy - J'ai mis à jour ma question avec la réponse en bas. Peut-être que quelque chose de plus profond va mal ici ..
joshcomley
1

La seule façon que j'ai trouvée est de créer un script de chauve-souris rapide:

psexec %1 %2

Ou remplacez-la %2par la commande / args que vous souhaitez.

Exécuter avec remote-psexec

\\systemname systeminfo | more
Ray Barbieri
la source
1

Si vous souhaitez enregistrer la sortie localement sur une machine distante. vous pouvez utiliser la commande ci-dessous. psexec \ myserver cmd / c "ipconfig> output.log"

Si vous souhaitez rediriger la sortie d'une machine distante vers une machine hébergée. vous pouvez utiliser ci-dessous la commande psexec \ myserver cmd / c "ipconfig> \ localmachine \ location \ output.log"

AbhishekTiwari
la source
0

J'ai eu le même problème et j'ai dû dire à PSEXEC de s'exécuter en tant qu'administrateur sur la machine distante:

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

la source
0

La seule fois où vous devez spécifier un nom d'utilisateur et un mot de passe avec PSExec est si vous devez extraire des données d'un partage réseau. Cependant, je le déconseille fortement, car le mot de passe est envoyé en texte clair, ce qui signifie que toute personne écoutant du trafic a maintenant votre nom d'utilisateur et votre mot de passe.


la source
0

J'ai trouvé que l'utilisation d'un nom de domaine complet pour le nom de serveur a résolu mon problème.

MattB
la source
C'est bien, mais rien n'indique que cela aurait quelque chose à voir avec le cas du PO.
HopelessN00b