@ ah Oh saya baru saja mencobanya :). Bagaimanapun, terima kasih!
Pablo Fernandez
itu tidak bekerja karena konstruksi <(foo) akan menunggu perintah bagian dalam selesai sebelum digantikan oleh pipa di baris perintah asli dari mana perangkat lunak akan dapat membaca, dan, ekor tidak akan pernah selesai :-)
Yap, begitulah cara saya melakukannya, kecuali saya biasanya memiliki beberapa terminal gnome terbuka, masing-masing dengan satu sesi di dalamnya
Tom O'Connor
1
Apakah ada cara untuk melakukan ini tanpa membuka beberapa sesi ssh independen?
tgies
8
Tetapi ini tidak memungkinkan Anda untuk menghentikan tailing Ctrl+C.
sorin
@sorin untuk menghentikan proses, cukup bawa masing-masing kembali ke latar depan fg; maka kamu bisa ctrl+c. Anda akan melakukannya sekali untuk setiap ekor yang Anda jalankan. Atau Anda dapat pkill -f sshmenargetkan mereka semua secara bersamaan.
Dale Anderson
34
Opsi pilihan saya adalah menggunakan multitail. Saya menjalankan sesuatu seperti:
Terima kasih! Saya sedang mencari contoh cara menggunakan multitail over ssh / pada host jarak jauh!
Noah Sussman
Multitail adalah solusi yang jauh lebih kuat.
obfk
situs web kami memiliki lebih dari 10 node web, dan multitail gagal pada percobaan pertama dengan kesalahan Operation not permitted, dengan 2 3 node web, tidak apa
Hieu Vo
Saya juga mendapatkan Operation not permitted, ada petunjuk?
Erik Aigner
7
Anda dapat menggunakan kain untuk mengikuti beberapa host (dan juga hasil grep, jika perlu):
Opsi -f setelah ssh memungkinkan Anda untuk memasukkan kata sandi sebelum berjalan di latar belakang. Maka Anda dapat memiliki hasil baris demi baris dalam satu file dan menjalankan:
tail -f /tmp/somefile
Akan memberi Anda sedikit lebih banyak kontrol atas perintah "tail" saat ini jika Anda ingin menggunakan opsi ekor lainnya untuk menampilkan output.
Lihatlah multitail . Sama seperti contoh di atas, Anda dapat memberikannya sebagai perintah untuk ssh, dan kemudian Anda akan berakhir dengan satu layar yang menampilkan (dan buffering untuk scrollback mudah) beberapa log. Itu juga mewarnai, yang sangat berguna untuk melihat anomali.
ini akan bekerja, mengeluarkan garis pada terminal / dev / pts / 6 (untuk mengetahui terminal Anda sendiri: jalankan: who am i dan itu akan menunjukkannya kepada Anda.)
Olivier Dulac
1
Anda dapat checkout dbitail.
Alat Java yang saya buat, dapat membaca file log lokal dan jauh menggunakan SSH. Ini cukup mudah digunakan.
Cukup unduh versi yang sesuai dengan sistem operasi Anda, dari rilis jar asli yang dapat dieksekusi dalam Java Runtime Anda (membutuhkan java 8_40 atau lebih tinggi):
atau Anda dapat menggunakan layar untuk membuat dua terminal dan kemudian membaginya.
SSH ke host pertama yang ingin Anda tail file log dan sebelum menjalankan tail, masuk ke layar.
Kemudian tail file pada host ini.
CTRL + A, c akan membuat layar atau jendela baru. Dari jendela baru ini ssh ke host kedua dan ekor file di sana.
Sekarang untuk membuat layar terbagi
CTRL + A, SHIFT + S, ini akan membuat layar terbagi dengan shell saat ini di bagian atas dan bagian bawah kosong. Untuk beralih ke bagian bawah dan meletakkan layar pertama di dalamnya,
CTRL + A, TAB, ini akan memindahkan Anda ke bagian bawah. Sekarang untuk membawa sesi SSH pertama Anda ke area ini:
CTRL + A, "(simbol kutipan) dan pilih sesi pertama dan tekan enter.
Saya menyadari ini mungkin terlihat seperti banyak senam, dan memang begitu, tetapi Anda terbiasa menggunakannya begitu Anda menggunakannya beberapa kali.
Selain itu, Anda dapat membuat file .screenrc sehingga banyak dari apa yang saya jelaskan dapat diotomatiskan saat pertama kali memasuki layar.
Satu hal yang menyenangkan tentang ini adalah Anda dapat menutup sesi dan melanjutkannya di tempat lain. Misalnya, Anda sedang bekerja dan Anda sedang memantau. Anda bisa menutup sesi Anda tanpa keluar, dan melanjutkan ketika Anda tiba di rumah atau ke lokasi lain.
Jawaban:
Ini bekerja untuk saya:
sumber
Ctrl+C
.fg
; maka kamu bisactrl+c
. Anda akan melakukannya sekali untuk setiap ekor yang Anda jalankan. Atau Anda dapatpkill -f ssh
menargetkan mereka semua secara bersamaan.Opsi pilihan saya adalah menggunakan multitail. Saya menjalankan sesuatu seperti:
sumber
Operation not permitted
, dengan 2 3 node web, tidak apaOperation not permitted
, ada petunjuk?Anda dapat menggunakan kain untuk mengikuti beberapa host (dan juga hasil grep, jika perlu):
sumber
Saya berpikir mungkin juga untuk menggunakan:
Opsi -f setelah ssh memungkinkan Anda untuk memasukkan kata sandi sebelum berjalan di latar belakang. Maka Anda dapat memiliki hasil baris demi baris dalam satu file dan menjalankan:
Akan memberi Anda sedikit lebih banyak kontrol atas perintah "tail" saat ini jika Anda ingin menggunakan opsi ekor lainnya untuk menampilkan output.
sumber
Lihat jawaban ini di stackoverflow - ini menggunakan dsh dan tail -f.
sumber
Lihatlah multitail . Sama seperti contoh di atas, Anda dapat memberikannya sebagai perintah untuk ssh, dan kemudian Anda akan berakhir dengan satu layar yang menampilkan (dan buffering untuk scrollback mudah) beberapa log. Itu juga mewarnai, yang sangat berguna untuk melihat anomali.
sumber
Ssh Paralel memiliki solusi yang bagus untuk ini:
-t0
menonaktifkan batas waktu koneksi, jika tidak pssh menutup koneksi-H '<host>...'
adalah daftar host untuk menjalankan perintah-P
adalah untuk mengaktifkan pencetakan stdout masing-masing hosttail -f /var/log/app.log
dapat berupa perintah apa pun yang dapat dijalankan shell jarak jauh Andasumber
Apa yang akan Anda katakan tentang sesuatu seperti ini? http://gist.github.com/303175
sumber
Hanya solusi aneh, tetapi berhasil !:
Layar 1
Layar 2
sumber
who am i
dan itu akan menunjukkannya kepada Anda.)Anda dapat checkout dbitail.
Alat Java yang saya buat, dapat membaca file log lokal dan jauh menggunakan SSH. Ini cukup mudah digunakan.
Beberapa penjelasan lebih lanjut: https://github.com/pschweitz/DBITail/wiki
Cukup unduh versi yang sesuai dengan sistem operasi Anda, dari rilis jar asli yang dapat dieksekusi dalam Java Runtime Anda (membutuhkan java 8_40 atau lebih tinggi):
https://github.com/pschweitz/DBITail/releases
Anda dapat menemukan dokumentasi yang lengkap (disematkan dengan halaman I dan Github juga)
Philippe
sumber
atau Anda dapat menggunakan layar untuk membuat dua terminal dan kemudian membaginya.
SSH ke host pertama yang ingin Anda tail file log dan sebelum menjalankan tail, masuk ke layar.
Kemudian tail file pada host ini.
CTRL + A, c akan membuat layar atau jendela baru. Dari jendela baru ini ssh ke host kedua dan ekor file di sana.
Sekarang untuk membuat layar terbagi
CTRL + A, SHIFT + S, ini akan membuat layar terbagi dengan shell saat ini di bagian atas dan bagian bawah kosong. Untuk beralih ke bagian bawah dan meletakkan layar pertama di dalamnya,
CTRL + A, TAB, ini akan memindahkan Anda ke bagian bawah. Sekarang untuk membawa sesi SSH pertama Anda ke area ini:
CTRL + A, "(simbol kutipan) dan pilih sesi pertama dan tekan enter.
Saya menyadari ini mungkin terlihat seperti banyak senam, dan memang begitu, tetapi Anda terbiasa menggunakannya begitu Anda menggunakannya beberapa kali.
Berikut ini adalah tutorial yang sangat bagus atau referensi cepat untuk perintah layar: http://www.pixelbeat.org/lkdb/screen.html
Selain itu, Anda dapat membuat file .screenrc sehingga banyak dari apa yang saya jelaskan dapat diotomatiskan saat pertama kali memasuki layar.
Satu hal yang menyenangkan tentang ini adalah Anda dapat menutup sesi dan melanjutkannya di tempat lain. Misalnya, Anda sedang bekerja dan Anda sedang memantau. Anda bisa menutup sesi Anda tanpa keluar, dan melanjutkan ketika Anda tiba di rumah atau ke lokasi lain.
sumber
Anda dapat mengekor file dari jarak jauh menggunakan bash dan rsync, saya menggunakannya dan ini adalah skrip bash yang hebat, lihat tutorial berikut
Ekor file dari jarak jauh menggunakan bash dan rsync
sumber