Apakah kurang memiliki fitur seperti tail --follow = name (-F)

41

Perintah lessdapat digunakan untuk menggantikan taildi

tail -f file

untuk memberikan fitur seperti menangani keluaran biner dan menavigasi scrollback:

less +F file

The +berarti awalan "berpura-pura saya ketik bahwa setelah startup", dan kunci Fdimulai berikut.

Tapi bisa lessjuga ganti

tail --follow=name file

yang mengikuti filebahkan jika file aktual akan dihapus atau dipindahkan, seperti file log yang dipindahkan file.log.1, dan kemudian file baru dibuat dengan nama yang sama dengan file yang diikuti?

Volker Siegel
sumber
1
Anda dapat mencoba dengan less --follow-nameatauless --follow-name +F
don_crissti
@don_crissti Bagus ... less --follow-name +Fapakah - tidak tahu bagaimana saya melewatkan itu - saya cukup yakin saya mencari halaman manual untuk follow... aneh. Buat jawaban!
Volker Siegel
Nah, beberapa pencarian mengungkapkan sudah ditanyakan dan dijawab di sini jadi saya akan meninggalkannya sebagai komentar. Anda selalu dapat memilih jawaban di sana.
don_crissti
@don_crissti Benar ... kecuali bahwa jawaban Anda yang benar tidak ditemukan di sana - --follow-namedijelaskan, tetapi +Ftidak pernah disebutkan, dan saya pikir itu cukup penting karena itu tidak diketahui secara jelas.
Volker Siegel
Jika Anda datang ke sini karena pencarian Google untuk less follow, BACA PERTANYAAN. Itu sudah menjawab bagaimana membuat lessperubahan file follow!
Hubert Grzeskowiak

Jawaban:

40

Ya, lessbisa diikuti dengan nama file

Fitur ini memiliki sintaks yang tidak jelas:

less --follow-name +F file.log

Dengan kurang, --follow-nameberbeda dari tailopsi --follow=name.
Itu tidak membuat lessmengikuti file, melainkan memodifikasi perilaku kunci perintah Fdi dalam kurang untuk mengikuti berdasarkan nama file, bukan deskriptor file.

Juga, tidak ada opsi normal untuk memulai lessdalam mode ikuti.
Tetapi Anda dapat menggunakan baris perintah untuk memberikan penekanan tombol untuk dieksekusi setelah startup, dengan awalan dengan +.
Menggabungkan opsi pengubah dengan +F, lesssebenarnya akan mulai dalam mode ikuti (dimodifikasi).

Gunakan +Fsendiri untuk setara dengan polos tail -f:

less +F file.log
Volker Siegel
sumber
Saya menduga bahwa jika Anda mengikuti aliran infinite dengan lebih sedikit, ini pada akhirnya akan menghabiskan memori Anda karena tidak seperti tail -f, jumlah memori yang digunakan tidak dibatasi oleh batas scrollback terminal (kecuali jika batas scrollback terminal juga tidak terbatas). less + F harus menjaga seluruh riwayat scrollback, dan tidak dapat mengandalkan reload irisan dari file pada harddisk.
CMCDragonkai
@CMCDragonkai Poin menarik. lessmemiliki opsi untuk mengontrol ukuran buffer yang digunakan per file ( -bdan -B), tidak jelas bagi saya apakah ukurannya dibatasi secara default.
Volker Siegel
Halaman manual untuk -Bmengatakan bahwa "Secara default, ketika data dibaca dari pipa, buffer dialokasikan secara otomatis sesuai kebutuhan. Jika sejumlah besar data dibaca dari pipa, ini dapat menyebabkan sejumlah besar memori dialokasikan. -B opsi menonaktifkan alokasi buffer otomatis ini untuk pipa, sehingga hanya 64 K (atau jumlah ruang yang ditentukan oleh opsi -b) digunakan untuk pipa. " Jadi itu berarti ketika membaca dari pipa tak terbatas, memori tak terbatas dialokasikan secara default, tetapi jika membaca dari file seperti file log, maka irisan 64 K digunakan secara default.
CMCDragonkai
4

Di Fedora setidaknya kurang memiliki opsi + F yang mengikuti isi file seperti tail -f tidak ..

Perbarui, coba tekan F dalam waktu kurang untuk beralih untuk mengikuti mode juga

pengguna1529413
sumber
Apakah kamu yakin Saya kurang memiliki opsi bertentangan bernama sama, -F: Halaman manual kurang mengatakan: -F or --quit-if-one-screen. Versi lessapa yang Anda miliki? Milik saya mengatakan less 458dengan opsi -V.
Volker Siegel
Sangat menarik, terima kasih untuk tautannya! Itu sepertinya bukan gnu yang kurang. Baris pertama penuh less -Vadalah less 458 (GNU regular expressions). Tolong beri saya versimu.
Volker Siegel
Ya saya yakin, tapi silakan pilih saya, stackexchange perlu berbagi cinta
user1529413
1
Hanya untuk memastikan Anda benar-benar berpikir saya tidak memilih Anda: Tidak, saya terbalikkan Anda.
Volker Siegel