如何查找大小范围内的文件?


3

请建议我使用命令查找所有zip大于60 MB但小于70 MB大小的文件的方法find


欢迎来到超级用户。我们不是脚本编写服务。我们希望用户告诉我们他们到目前为止已经尝试了哪些内容(包括他们正在使用的任何脚本)以及卡在哪里,以便我们可以帮助解决特定问题。仅要求脚本的问题过于广泛,很可能被搁置或关闭。请阅读我如何问一个好问题?
DavidPostill

Answers:


5
find -iname "*.zip" -size +60M -size -70M

您还可以使用-o析取和\( … \)对各种比赛进行分组。


2
find -iname "*.zip" -size +$((60*1024*1024))c -size -$((70*1024*1024))c

不要使用缩写60M70M因为这也会排除所有大于69MB的文件,包括69.001MB!

从信息文档部分2.4尺寸

-- Test: -size n[bckwMG]
    True if the file uses N units of space, rounding up.
    ...

因此69.001会四舍五入到70,从而被排除在外

最好的例子就是find . -size -1M,这将匹配大小的文件为零


是的,我在尝试对视频文件进行存储分区时遇到了这个问题。有些尺寸不会落入任何桶中。
Sridhar Sarnobat

这个提示太好了!
halloleo

-1

与您提到的相同,但带有-a。这应该工作

查找/ -type f -size + 100M -a -size -200M -exec du -sh {} \;


1
要考虑的事情:(1)我认为您的答案没有添加任何新内容,因为-a它是默认运算符,其他答案暗含使用它。如果您的答案与语法的其他部分一起说明了行为find,那么它将具有一定的价值。在我看来,这只是一个不必要的复杂(为什么-exec du?)通用(没有与zip相关的过滤器)的替代方案。(2)另一个答案是社区维基。这就像是对其进行改进的邀请,而不是同时编写答案。因此,如果您确实有需要添加的内容,那么最好的办法就是编辑社区Wiki答案。
卡米尔Maciorowski
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.