Saya ingin menonton file yang ditimpa setiap 5 menit less
. Bagaimana saya bisa less
mengikuti deskriptor file baru alih-alih mempertahankan yang lama ditampilkan? watch "cat file"
tidak akan melakukannya karena file terlalu panjang untuk masuk ke dalam satu jendela terminal.
9
tail -f
halaman manual. Namun demikian saya telah mengklarifikasi pertanyaan saya.less --follow-name
lihat unix.stackexchange.com/a/74287/112522Jawaban:
Anda bisa mendapatkan efek ini dengan mengeluarkan
F
perintah (Shift+F
) saat melihat fileless
. Untuk berhenti mengikuti dan kembali ke halaman, tekanCtrl+C
Karena file Anda hanya berubah setiap 5 menit, Anda juga dapat menggunakan
tail -f
dan menentukan waktu tidur yang lebih lama dengan-s
(default ke 1 detik). Contohnya,memeriksa
myfile
output setiap 60 detik.EDIT: Karena pertanyaan yang menyesatkan, jawaban di atas tidak memuaskan. Upaya kedua berikut:
Untuk membuka kembali file yang sama
less
setiap 5 menit, coba ini:Ini akan memunculkan subkulit yang melatarbelakangi proses shell lain yang diperintahkan untuk membunuh proses induknya setelah 5 menit. Kemudian membuka file dengan
less
. Ketika perintah shell berlatar belakang membunuh subshell induk, itu membunuh semua anak-anaknya, termasuk perintah "kurang". Kemudian loop memulai proses lagi.Satu-satunya cara mudah yang saya tahu untuk membunuh ini adalah dengan mematikan terminal tempat shell asli Anda berada. Jika itu tidak dapat diterima, Anda dapat menggunakan trik "killfile":
Untuk berhenti melakukan
stuff
,rm
killfile di shell lain.sumber
watch -n 1 less <filename>
Anda dapat melakukan hal serupa di
vim
.Mulai sesi server dari
vim
:Kemudian di konsol lain, pantau file untuk pembaruan dan beri tahu sesi vim untuk memuat kembali file segera setelah diperbarui:
Beberapa gotcha.
vim
tidak dikompilasi denganclientserver
fitur dalam.inoifywait
akan berhenti berfungsi saat file dihapus. Jadi saya harap file Anda ditimpa. Dimungkinkan untuk mengatasi itu juga, tentu saja.Dan jika Anda ingin memiliki pengalaman yang lebih
less
seperti, Anda dapat menggunakanless
makro untuk mendapatkanless
binding utama Andavim
.sumber
Saya menemukan program "kurang" seperti yang lama, tapi sangat bagus ("pager"). Ini memiliki perintah "R" yang menyegarkan file.
Ini disebut "lv" , Anda dapat menginstalnya di Ubuntu menggunakan:
Namun, tampaknya tidak memiliki fitur pengisian otomatis.
sumber
Anda dapat mencoba perintah ini: file tail -f
sumber
Ekor adalah temanmu. "tail -f filename" akan menampilkan baris baru saat muncul.
Atau jika Anda mencari perubahan yang dibuat di tengah file, mungkin jalankan skrip setiap beberapa menit untuk membuat salinan file ke lokasi temp dan lakukan perbedaan di dalamnya?
sumber
tail -f
masih akan membaca yang lama.