GNU/Linux >> Belajar Linux >  >> Linux

Perintah Shell untuk memantau perubahan dalam file

Solusi 1:

Apakah maksud Anda

tail -f logfile.log

?

(Halaman manual untuk ekor)

Solusi 2:

Anda mungkin bermaksud ekor, sesuai jawaban Jon Skeet.

Satu lagi yang berguna adalah menonton; itu memungkinkan Anda untuk menjalankan perintah secara berkala dan melihat output layar penuh. Misalnya:

watch -n 10 -d ls -l /var/adm/messages

Akan menjalankan perintah ls -l /var/adm/messages setiap 10 detik, dan sorot perbedaan output antara proses selanjutnya. (Berguna untuk melihat seberapa cepat file log berkembang, misalnya).

Solusi 3:

inotifywait from inotify-tools berguna jika Anda ingin menjalankan perintah setiap kali file (atau file apa pun dalam direktori) berubah. Misalnya:

inotifywait -r -m -e modify /var/log | 
   while read path _ file; do 
       echo $path$file modified
   done

Solusi 4:

Saya lebih suka menggunakan less +FG lebih dari tail -f karena saya merasa perlu mencari file log untuk kesalahan atau ID tertentu. Jika saya perlu mencari sesuatu, saya ketik ^C untuk berhenti mengikuti file dan ? untuk mulai mencari mundur.

Pengikatan kunci hampir sama dengan vi . Setiap perintah dapat diinisialisasi saat startup menggunakan + opsi:

+cmd   Causes  the  specified  cmd  to be executed each time a new file is
       examined.  For example, +G causes less to  initially  display  each
       file starting at the end rather than the beginning.

Untuk log yang sangat panjang, saya merasa nyaman menggunakan -n opsi yang mematikan penomoran baris. Dari halaman manual:

-n or --line-numbers
          Suppresses line numbers.  The default (to use line numbers)  may
          cause  less  to run more slowly in some cases, especially with a
          very large input file.  Suppressing line  numbers  with  the  -n
          option  will  avoid this problem.  Using line numbers means: the
          line number will be displayed in the verbose prompt and in the =
          command,  and the v command will pass the current line number to
          the editor (see also  the  discussion  of  LESSEDIT  in  PROMPTS
          below).

1. Tip untuk rgmarcha karena menunjukkan hal ini di komentar.

Solusi 5:

Tail is great... less juga bisa digunakan start less pada file yaitu less myfile lalu tekan Shift +F . Ini memiliki lebih sedikit tindakan sebagai ekor.


Linux
  1. Ketika Kami Menggunakan Perintah Mv, Perubahan Apa Yang Terjadi Di Hdd?

  2. Duplikat File X Kali Di Command Shell?

  3. Bagaimana cara menjalankan perintah setiap kali file berubah?

  1. Perintah Ekor Linux

  2. Perintah wc Linux

  3. Linux lebih sedikit perintah

  1. Perintah Sentuh Linux

  2. Perintah Cat di Linux

  3. Perintah Berkas Linux