删除600字节以下的所有文件

时间:2013-05-15 08:48:14

标签: shell unix

我已经看到有关如何删除特定文件大小的所有文件的问题,但是没有一个文件处理过非常小的文件(我的大多数都是包含500-1200个字符的简单.txt文件)。到目前为止我看到的所有解决方案看起来都像

find . -size -1k -delete

我尝试过使用以下内容:

find . -size -600
find . -size -600b
find . -size -0.6k

这些都没有用,有人可以告诉我如何使这个方法适用于较小的文件大小? (我确定我在600之后错过了一个尾随的角色)

2 个答案:

答案 0 :(得分:5)

c是字节的大小说明符,它表示字符。您可能认为b变体实际上是用于块(每个512字节)。

这些都包含在find

的联机帮助页中
-size n[cwbkMG]
    File uses n units of space.  The following suffixes can be used:
        'b'  for 512-byte blocks (this is the default if no suffix is used)
        'c'  for bytes
        'w'  for two-byte words
        'k'  for Kilobytes (units of 1024 bytes)
        'M'  for Megabytes (units of 1048576 bytes)
        'G'  for Gigabytes (units of 1073741824 bytes)

答案 1 :(得分:1)

你应该使用

find . -size -600c

表示字节