Bagaimana cara mencatat semua peristiwa yang dilakukan pada direktori?


12

Bagaimana saya bisa mencatat semua peristiwa yang dilakukan pada direktori tertentu?

Saya ingin mencatat entri setiap direktori yang diubah dalam beberapa durasi waktu. Saya menggunakan find . -type d -mmin -5perintah.

Selain itu, saya ingin memberikan lebih banyak detail, ketika direktori apa pun dipindahkan ke tempat lain, saya perlu menambahkan detail log di bawah ini, mis.,

direktori "xyz" pindah dari "home / usr / xyz" => ke "home / usr / dokumen / xyz"

Jawaban:


9

Jika menggunakan Linux, Anda harus mencoba inotifywaitperintah, itu dirancang untuk mendengarkan acara di file atau direktori.

inotifywait -m -r /dir

Anda dapat menggunakan whileloop di atasnya untuk memfilter output.

Selain itu, sangat ringan: tidak perlu poll()setiap N detik, itu semua keajaiban.

Lihat http://inotify-tools.sourceforge.net/


Dokumen proyek URL ditambahkan.
Gilles Quenot

inotifyspesifik untuk Linux tetapi pertanyaannya bukan untuk Linux. Solusi yang bagus akan menjadi OS spesifik seperti ini.
jordanm
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.