当前位置: 首页 > 面试题库 >

如何在Linux中删除多个0字节文件?

狄鸿禧
2023-03-14
问题内容

我有一个目录,其中包含许多0字节文件。使用ls命令时,我什至看不到文件。我正在使用一个小的脚本来删除这些文件,但有时甚至不删除这些文件。这是脚本:

i=100
while [ $i -le 999 ];do
    rm -f file${i}*;
    let i++;
done

还有其他方法可以更快地执行此操作吗?


问题答案:

使用find联合xargs

find . -name 'file*' -size 0 -print0 | xargs -0 rm

您避免rm为每个文件启动。



 类似资料:
  • 问题内容: 有没有一种简单的方法可以从命令行在充满文本文档的文件夹中删除同一行文本? 问题答案: 如果您的sed版本允许该标志(就地编辑): 如果没有,只需将其放入bash循环中即可:

  • 问题内容: 如果大小为0,如何在Linux中删除某个文件。我想在crontab中执行此文件,而无需任何额外的脚本。 像这样吗 问题答案: 这将删除目录(及以下)中大小为零的所有文件。 如果您只想要一个特定的文件;

  • 问题内容: 是否有任何函数调用或简单的方法可以从golang的文本文件中删除前N个字节?假设文件有争议地由各种go例程附加,同时我想删除文件的前N个字节。 问题答案: 您需要跳过第一个字节并进行常规读取,请参见示例:

  • 我从一个根有两个节点,我想在一个请求中删除这两个节点的数据。两个子节点具有相同的密钥。我试过这个: 但是它只从第一个节点删除数据

  • 问题内容: 我有许多扩展名为.txt的文件。如何删除Linux中多个文件的.txt扩展名? 我找到 替代扩展 我也想对子文件夹中的文件执行此操作。 问题答案: 有点危险,因为根据其手册页: 重命名将通过替换第 一次 出现的… 来重命名指定的文件。 像这样的文件名会很乐意做错事。 这是使用和的解决方案: 请记住,如果文件名包含换行符(罕见,但并非不可能),这将中断。 如果您有GNU查找,这是一个更可

  • 问题内容: 我想从当前目录中的所有文件名中删除 test.extra 但是它抱怨没有找到file.echo是为了确保它正确列出。 问题答案: 首先使用“ sed -e”代替“ \ e” 我建议您用bash这样做