我有一个文件夹,里面有数十万个 4kb 大小的 .txt 文件。其中一些是完全空的,而另一些则不是。但是,它们都显示相同的大小 4kb,因为这是配置的最小块大小。有没有办法大量删除空文件,但保留非空文件?执行
rsync --remove-sent-files -rv --min-size=4kb
删除所有内容。
谢谢
答案1
我想我找到了部分答案。如果我们假设一个内容为空的 txt 文件至少有一个隐藏字符,那么有人可以找到所有大小小于特定字节数的文件并删除这些文件。例如,如果我们想删除所有大小为 1 字节的文件,我们可以发出:
find . -type f -size -2c -delete
答案2
当使用 查看时,真正空的文件将显示 0 字节ls -l
。
您可以使用以下方法删除它们find
(阅读man find
https://manpages.ubuntu.com/manpages/cosmic/en/man1/find.1.html):
find folder -maxdepth 1 -type f -name '*.txt' -size 0 -delete