如何通過大量數據(28TB)搜索過去24小時內最大的10個文件?Bash腳本查找過去24小時內最近修改的大文件
從目前的答案,下面我試着:
$ find . -type f -mtime -1 -printf "%p %s\n" | sort -k2nr | head -5
這個命令需要超過24小時這違背了搜索最近一次是在過去24小時內修改的目的。有沒有解決方案比上述方法更快,可以大大縮短搜索時間?監控系統的解決方案也不可行,因爲監控太多可能會導致性能問題。
如何通過大量數據(28TB)搜索過去24小時內最大的10個文件?Bash腳本查找過去24小時內最近修改的大文件
從目前的答案,下面我試着:
$ find . -type f -mtime -1 -printf "%p %s\n" | sort -k2nr | head -5
這個命令需要超過24小時這違背了搜索最近一次是在過去24小時內修改的目的。有沒有解決方案比上述方法更快,可以大大縮短搜索時間?監控系統的解決方案也不可行,因爲監控太多可能會導致性能問題。
這樣的事情?
$ find . -type f -mtime -1 -printf "%p %s\n" | sort -k2nr | head -5
前5個按過去24小時大小修改的文件。這樣
我同意這個作品,但我不知道它是效率和通過兆兆字節的數據擴展的最佳 –
find是一個編譯的命令,在C中。如果您使用Linux這非常快。大小無關緊要(文件未打開),這是重要的文件數量。 –
@MikeSallese:是什麼讓你覺得效率不高? – nickgrim
您可以使用標準的但非常強大find
命令(start_directory
是目錄,掃描文件)
find start_directory -type f -mtime -1 -size +3000G
-mtime -1
選項:文件修改前1天或更少 -size +3000G
選項:大小的文件至少3 Gb
使用大小和年齡標準的find命令 –
在使用TB級數據處理時,是否有更高效的方法來執行此操作? –
問題仍然過寬? @TobySpeight –