找到隐藏的压缩文件并且大于大小

时间:2011-03-17 22:19:30

标签: shell sed awk find

我了解到我可以使用以下方法查找大于X兆字节的文件:

$ find . -size +XM

但我隐藏了压缩文件(带有任何扩展名)(由rar和zip压缩),如:

i_am_hidden.ink

这样当我尝试查看文件的mimetype时(在这种情况下,隐藏的rar文件):

$ file "i_am_hidden.ink" -b --mime-type

输出是:

application/x-rar

因此,linux能够确定隐藏文件何时实际上是压缩文件。

如果在shell(终端)上列出了所有隐藏的压缩文件,给定路径目录?

1 个答案:

答案 0 :(得分:2)

find . -size +XM -exec file {} --mime-type + | awk -F':' '/x-rar/{print $1}'

请注意,我已将-b标记移至file,因为我希望输出文件名和mime类型。然后,awk将解析查找x-rar的输入,并仅打印字段#1中的文件名。

如果您的find版本抱怨-exec,请尝试将+替换为\;。它会慢一些,但它也会起作用。