Bagaimana cara mengirim output perintah unix dari satu server ke server lain?


Jawaban:


20

Umum, Anda selalu dapat melakukan:

<command> | ssh user@remote-server "cat > output.txt"

Menghemat output <command>ke output.txtfile di server jauh.

Dalam kasus Anda, pada Server-1:

echo "qwerty" | ssh user@Server-2 "cat > output.txt"

Jika dua server tidak memiliki konektivitas, tetapi Anda dapat melakukan ssh ke kedua server, kemudian dari mesin lokal, Anda dapat melakukan:

ssh user@Server-1 "<command>" | ssh user@Server-2 "cat > output.txt"

Saya mencoba dan saya mendapatkan waktu habis koneksi kesalahan .. Saya pikir tidak ada konektivitas antara dua server .. Apakah ada cara lain ??
vinod

1
@vinod: Ini masalah konektivitas dari dua server, Anda tidak dapat melakukan ini jika dua server tidak memiliki konektivitas. Pastikan Anda dapat ssh dari Server-1 ke Server-2. Bisakah Anda ssh dari mesin lokal ke kedua server?
cuonglm

ya ... saya dapat ssh kedua server secara terpisah dari mesin lokal
vinod

6

Anda dapat menjalankan:

ssh remote_server "command" > file_on_local_host.txt

atau gunakan output sebagai input untuk perintah lokal:

ssh remote_server "remote_command" | local_command


1

Karena Anda tidak dapat terhubung langsung dari server 1 ke server 2 Anda dapat menggunakan ini, memiliki mesin lokal Anda di tengah:

ssh server1 command | ssh server2 "cat > output.txt"
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.