2014-07-07 113 views
0

在UNIX系統上,一切都是文件;如果某件事不是文件,那是一個過程。 這是linux文件系統的優點,但這裏有個問題!如何在lnux系統中檢測文件更改或刪除

如何檢測用戶或程序是否創建或更改或刪除了文件?

我嘗試用inotify的做到這一點,但不與內核版本3.4的OpenWrt分佈

感謝

回答

1

您是否嘗試過的stat命令?如果你不能使用inotify,那麼你可能不能使用inotifywait,因爲它使用inotify接口。

您可以直接從輸出中獲取有關文件創建和修改的信息。

無法直接訪問被刪除的部分(當用戶或程序刪除文件時)。 Unix提供atime,mtime和ctime時間戳。

Atime是最後一次訪問內容的時間。 Ctime是inode的最後修改時間 - 元數據。 Mtime是內容最後修改的時間。

所以不能刪除時間可以直接接受。您可以通過文件所在目錄的時間戳來檢查文件是否被刪除。

+0

它可以實時檢測文件的變化嗎?這意味着如果文件被修改,它發送信號給腳本通過改變來通知它? –

+0

@Anis_Stack有沒有簡單的方法,你可以得到通知。你可以編寫一些我認爲會執行stat命令的腳本,並使用一些reg exps來獲取修改的時間 – sestus

相關問題