我想知道是否有一种“简单”方式(通过管道或其他东西)来命令(按文件大小)bash中“find”命令的结果,例如:
find /location/of/directory/ -type f -size +2G
答案 0 :(得分:4)
例如,您可以使用%k
以千字节为单位打印大小:
find . -type f -size +2G -printf "%kKB %p\n" | sort -n
-printf "%kKB %p\n"
,您将以千字节打印文件,然后输入名称。sort -n
获取此输入并相应地对其进行排序。查看示例:
$ find . -type f -size +1M -printf "%p %kKB\n" | sort -n -k2
./arrr.txt.gz 1664KB
./brrr.gz 32388KB
答案 1 :(得分:2)
试试这个:
find /location/of/directory/ -type f -size +2G -exec du -s {} + |sort -n
-exec
对每个搜索结果执行命令du -s
,而sort -n
以数字方式对结果进行排序。