Bash 用于查找过去 24 小时内最近修改的大文件的脚本
Bash Script to find large files recently modified in the past 24 hours
如何在海量数据(28TB)中搜索出过去24小时内最大的10个文件?
根据我试过的以下当前答案:
$ 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
过去 24 小时内按大小排列的前 5 个修改文件。
您可以像这样使用标准但非常强大的 find
命令(start_directory
是扫描文件的目录)
find start_directory -type f -mtime -1 -size +3000G
-mtime -1
选项:文件在 1 天前或更短时间内修改
-size +3000G
选项:文件大小至少为 3 Gb
如何在海量数据(28TB)中搜索出过去24小时内最大的10个文件?
根据我试过的以下当前答案:
$ 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
过去 24 小时内按大小排列的前 5 个修改文件。
您可以像这样使用标准但非常强大的 find
命令(start_directory
是扫描文件的目录)
find start_directory -type f -mtime -1 -size +3000G
-mtime -1
选项:文件在 1 天前或更短时间内修改
-size +3000G
选项:文件大小至少为 3 Gb