Ubuntu

獲取所有 PHP 文件並儲存它們的大小

  • August 20, 2013

我喜歡監視每個 php 文件的大小(以及是否添加了新文件)。在我的伺服器上超過 200 000 個 em 所以find需要很長時間。

這就是我所做的:

ls -1 --size $(find -P . -type f -name "*.php")

這需要幾個小時。

我能做些什麼來加快監控速度嗎?(除了更快的伺服器)或者是否有任何技巧可以給出文件大小或 crc32 的文件列表?

另外我不知道這是否會更快:

find . -P -type f -name "*.php" -exec ls -1 --size \{} \;

find命令有一個-printf選項,可以用來列印文件的大小而不必執行ls

find . -name '*.php' -printf "%p %s\n" 

您可以使用sha512sum(或md5sum)獲取文件列表並為它們生成雜湊值,稍後可用於檢查它們的完整性

find . -name '*.php' | while read line; do sha512sum "$line"; done

如果您將上述命令的輸出擷取到文件中,則可以使用 sha512sum 檢查它們的完整性

sha512sum -c file

使用 OSSEC 進行完整性檢查。

引用自:https://serverfault.com/questions/532214