Назад | Перейти на главную страницу

Захват вывода удаленного процесса из psexec sysinternal

Я пытаюсь зафиксировать вывод удаленный процесс из psexec (т.е. не собственный вывод psexec). Так, например, я мог бы запустить «ipconfig» и распечатать результат в файл журнала.

Я пытался:

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

Последний просто дает вывод psexec.

Я не уверен, в чем разница между всеми ними, но я видел, как они предлагались в моей охоте за ответом в другом месте.

Может ли кто-нибудь дать мне пример командной строки, которая будет записывать вывод ipconfig в файл ??

Изменить 1: Я хочу, чтобы файл журнала сохранялся на локальном компьютере, а не на удаленном.

Изменить 2:

Вот что я получаю при запуске "psexec \\ myserver ipconfig":

C:\TempDll>psexec \\myserver ipconfig

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


ipconfig exited on myserver with error code 0.

C:\TempDll>

Надеюсь, это поможет кому-то. Мне удалось запустить PSExec с помощью следующей команды в Windows 10 и удаленном экземпляре Windows 10.

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

Команда

Возможно ошибка в PsExec в v1.95?

У меня v1.94, и все нормально, но я только что загрузил последнюю копию и получаю те же проблемы, что и вы.

РЕДАКТИРОВАТЬ:

PsExec на моем публичном SkyDrive

Только будьте осторожны, в какой папке вы хотите сохранить файл output.log.

Сохраните output.log локально:
psexec \\ serverIP ipconfig> c: \ output.log

Сохраните output.log на удаленном компьютере:
psexec \\ serverIP ipconfig> \\ ipaddress \ c $ \ output.log

psexec ... > output.log перезапишет файл output.log, если он существует.
psexec ... >> output.log добавит вывод в конец.

Вы также можете запустить psexec \\ serverIP cmd, смените каталог на удаленном компьютере и просто запустите ipconfig> output.log

Единственный способ, который я нашел, - это создать быстрый сценарий летучей мыши:

psexec %1 %2

Или заменить %2 с нужной командой / args.

Запускаем с помощью remote-psexec

\\systemname systeminfo | more

Если вы хотите сохранить вывод локально на удаленном компьютере. вы можете использовать команду ниже. psexec \ myserver cmd / c "ipconfig> output.log"

Если вы хотите перенаправить вывод с удаленной машины на хост-машину. вы можете использовать команду ниже psexec \ myserver cmd / c "ipconfig> \ localmachine \ location \ output.log"

У меня была такая же проблема, и мне пришлось сказать PSEXEC, чтобы он запускался от имени администратора на удаленном компьютере:

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

Единственный раз, когда вам нужно указать имя пользователя и пароль с помощью PSExec, - это если вам нужно извлечь данные из общего сетевого ресурса. Я настоятельно не рекомендую это делать, поскольку пароль отправляется в виде открытого текста, а это означает, что любой, кто слушает трафик, теперь имеет ваше имя пользователя и пароль.

Я обнаружил, что использование полного доменного имени для имени сервера решило мою проблему.