如果您沒有太多文件,最好的方法之一就是使用ls
來進行自我排序。
按名稱和打印每行一個文件:
find $CATALOG -size +$SIZE -exec ls -1 {} +
按大小和打印每行一個文件:
find $CATALOG -size +$SIZE -exec ls -S1 {} +
排序修改時間和打印每行一個文件:
find $CATALOG -size +$SIZE -exec ls -t1 {} +
你也可以玩ls
開關:按修改時間排序(小先)w第i個長列表格式,人類可讀的大小:
find $CATALOG -size +$SIZE -exec ls -hlrt {} +
哦,你可能只想find
文件(而忽略目錄):
find $CATALOG -size +$SIZE -type f -exec ls -hlrt {} +
最後,一些言論:避免資本變量bash中的名字(這被認爲是不好的做法),並避免反撥,請使用$(...)
。例如,
results=$(find "$catalog" -size +$size -type f -exec ls -1rt {} +)
此外,你可能不希望把所有的結果放在像上一行一樣的字符串中。你可能想把結果放在一個數組中。在這種情況下,使用mapfile
這樣的:
mapfile -t results < <(find "$catalog" -size +$size -type f -exec ls -1rt {} +)
也看到中超[我怎樣才能找到那些大文件/比x字節小?(http://superuser.com/q/204564/173513)用戶。 – jww
我實際上在這個問題中發現了一個問題的答案(查找超過一定大小的文件) - 謝謝:-) – markc