1 頁 (共 1 頁)

Linux删除大小为0的文件

發表於 : 2017-06-21 09:09:34
yehlu
https://gxnotes.com/article/32690.html

Linux删除大小为0的文件
墨染 技术问答 2017-05-19 15:26 12次浏览 delete-file, LINUX, ls, rm Linux删除大小为0的文件已关闭评论
问题描述

如果其大小为0,我如何删除linux中的某个文件。我想在crontab中执行此操作,而不需要任何额外的脚本。
l filename.file | grep 5th-tab | not eq 0 | rm
这样的东西
最佳解决方案

这将删除大小为零的目录(及以下)中的所有文件。
find /tmp -size 0 -print0 |xargs -0 rm
如果你只想要一个特定的文件;
if [ ! -s /tmp/foo ] ; then
rm /tmp/foo
fi
次佳解决方案

你会想使用find:
find . -size 0 -delete
第三种解决方案

要搜索和删除当前目录和子目录中的空文件:
find . -type f -empty -delete
-type f是必需的,因为目录被标记为大小为零。
点.(当前目录)是起始搜索目录。如果您有GNU查找(例如Mac OS),您可以在这种情况下省略:
find -type f -empty -delete
来自GNU find文档:
If no files to search are specified, the current directory (.) is used.
第四种方案

您可以使用命令find来执行此操作。我们可以使用-type f匹配文件,并使用-size 0匹配空文件。然后我们可以删除与-delete的匹配。
find . -type f -size 0 -delete
第五种方案

这适用于简单的BSD,因此它应该与所有口味普遍兼容。 pwd(.)
find . -size 0 | xargs rm
参考文献

Linux delete file with size 0 [duplicate]
注:本文内容整合自google/baidu/bing辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:gxnotes#qq.com(#替换为@)。
本文由《共享笔记》整理, 博文地址:https://gxnotes.com/article/32690.html,未经允许,请勿转载。