Menangkap output dari proses jarak jauh dari psexec sysinternal

19

Saya mencoba untuk menangkap output dari proses jarak jauh dari psexec (yaitu bukan output psexec sendiri). Jadi, misalnya saya bisa menjalankan "ipconfig" dan mencetak hasilnya ke file log.

Saya telah mencoba:

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

Yang terakhir hanya memberikan output psexec.

Saya tidak yakin apa perbedaan di antara semua ini, tetapi saya telah melihat mereka menyarankan dalam mencari jawaban di tempat lain.

Adakah yang bisa memberi saya contoh perintah baris yang akan menangkap output dari ipconfig ke file ??

Sunting 1: Saya ingin file log disimpan di mesin lokal, bukan yang jauh.

Edit 2:

Inilah yang saya dapatkan dari menjalankan "psexec \\ myserver ipconfig":

C: \ TempDll> psexec \\ myserver ipconfig

PsExec v1.95 - Jalankan proses dari jarak jauh
Hak Cipta (C) 2001-2009 Mark Russinovich
Sysinternals - www.sysinternals.com


ipconfig keluar di myserver dengan kode kesalahan 0.

C: \ TempDll>
Joshcomley
sumber
Apakah Anda ingin log disimpan di mesin lokal atau jarak jauh?
Alex J
1
Hm, "psexec \\ myserver ipconfig> output.log" bekerja di komputer saya
splattne

Jawaban:

3

Mungkin bug di PsExec di v1.95?

Saya memiliki v1.94 dan mendapatkan output yang baik tetapi saya baru saja mengunduh salinan terbaru dan mendapatkan masalah yang sama seperti Anda sendiri.

EDIT:

PsExec di SkyDrive publik saya

RhysSH
sumber
Doh !! Bisakah Anda menautkan salinan 1,94 di sini? Sepertinya saya tidak dapat menemukan salinan daring di mana pun. Setiap kali saya mengunduh "v1.94" itu benar-benar memberi saya 1,95 :(
joshcomley
FYI: Ini di v1.96 pada 06/29.
Chris
3

Semoga ini bisa membantu seseorang. Saya dapat menjalankan PSExec dengan perintah berikut pada Windows 10 dan contoh Windows 10 jarak jauh.

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

Perintah

IanC
sumber
Ini bekerja untuk saya di Windows 10 LTSB. Saran bagus. psexec -s -d "cmd /C ipconfig" > outputfile.txt 2>&1
TheIncorrigible1
1

Hanya hati-hati di folder mana Anda ingin menyimpan file output.log.

Simpan output.log secara lokal:
psexec \\ serverIP ipconfig> c: \ output.log

Simpan output.log pada mesin jarak jauh:
psexec \\ serverIP ipconfig> \\ ipaddress \ c $ \ output.log

psexec ... > output.log akan menimpa file output.log jika ada.
psexec ... >> output.log akan menambahkan output di akhir.

Anda juga dapat menjalankan psexec \\ serverIP cmd , mengubah direktori Anda pada mesin jarak jauh dan cukup menjalankan ipconfig> output.log

Jindrich
sumber
Terima kasih Roy, tapi semua saya dapatkan adalah file kosong output.log, sama dengan contoh yang saya mencoba di atas :(
joshcomley
Apakah Anda mendapatkan sesuatu jika Anda menjalankan psexec \\ serverip ipconfig?
Jindrich
@ Roy - Saya telah memperbarui pertanyaan saya dengan jawaban di bagian bawah. Mungkin sesuatu yang lebih dalam yang salah di sini ..
joshcomley
1

Satu-satunya cara yang saya temukan adalah membuat skrip kelelawar cepat:

psexec %1 %2

Atau ganti %2dengan perintah / arg yang Anda inginkan.

Jalankan dengan remote-psexec

\\systemname systeminfo | more
Ray Barbieri
sumber
1

Jika Anda ingin menyimpan output secara lokal di mesin jarak jauh. Anda dapat menggunakan perintah di bawah ini. psexec \ myserver cmd / c "ipconfig> output.log"

Jika Anda ingin mengarahkan output dari mesin jarak jauh ke mesin yang dihosting. Anda dapat menggunakan perintah di bawah ini psexec \ myserver cmd / c "ipconfig> \ localmachine \ location \ output.log"

AbhishekTiwari
sumber
0

Saya memiliki masalah yang sama dan harus memberi tahu PSEXEC agar berjalan sebagai pengguna admin di mesin jarak jauh:

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

sumber
0

Satu-satunya waktu Anda perlu menentukan nama pengguna dan kata sandi dengan PSExec adalah jika Anda perlu menarik data dari jaringan berbagi. Saya sangat menyarankan untuk tidak melakukannya, karena kata sandi dikirim dalam teks, yang berarti siapa pun yang mendengarkan lalu lintas sekarang memiliki nama pengguna dan kata sandi Anda.


sumber
0

Saya menemukan bahwa menggunakan FQDN untuk servername memecahkan masalah saya.

MattB
sumber
Itu bagus, tetapi tidak ada indikasi bahwa ini ada hubungannya dengan kasus OP.
HopelessN00b