小编gol*_*er3的帖子

查找命令:-size 行为

我对findLinux 中的命令有疑问。

在我在网上找到的所有文章中,它都说 属性-size -10M,例如,返回大小小于 10 MB 的文件。但是当我尝试对此进行测试时,似乎-size -10M返回大小小于或等于 9 MB 的文件。

如果我做

find . -type f -size -1M
Run Code Online (Sandbox Code Playgroud)

find命令仅返回空文件(单位无关紧要,可以是 -1G、-1k...)。

find . -type f -size -2M
Run Code Online (Sandbox Code Playgroud)

返回文件 <= 1M 大小等。

手册页说:

请记住,大小四舍五入到下一个单位。因此 -size -1M 不等于 -size -1048576c。前者只匹配空文件,后者匹配 0 到 1,048,575 字节的文件。

好的,所以我猜 -1M 被四舍五入到 0M,-2M 到 -1M 等等......?

但是之后

find . -type f -size 1M
Run Code Online (Sandbox Code Playgroud)

返回文件 <= 1M(即 100K 和 512K 文件,但不是空文件),而我希望它返回大小正好为 1M 的文件。

find . -type f -size 2M
Run Code Online (Sandbox Code Playgroud)

返回文件 …

size find

10
推荐指数
1
解决办法
539
查看次数

标签 统计

find ×1

size ×1