我可以按降序(任意大小)对文件进行排序,也可以列出所有大于 1000 字节的文件,但不知道如何对用户指定目录中大于 1000 字节的文件进行排序。
列出大于 1000 字节的文件:
for i in "$1/*" # $1 expects a directory name
do
if [ `wc -c $i` -gt 1000 ]
echo $i
done
按大小降序列出文件:
`ls -lhS`
但是如何按大小降序列出所有大于 1000 字节的文件呢?
答案1
尝试这个:
find . -maxdepth 1 -size +1000c -type f -exec ls -lhSa '{}' +
解释:
-maxdepth 1
- 仅在当前目录中查找文件
-size +1000c
- 仅查找大于 1000 字节的文件(“ c
” = 字节)
-type f
- 只查找文件
-exec <command> {} +
- 执行命令。请参阅man find
了解更多信息
如果您不想使用 find
(我不知道为什么),你可以输入(thx@αГsнιη):
ls -lpSa | awk '! /\// && $5>1000'