linux – 使用find和xargs删除带有rm的文件

当我做

rm file.txt

要么

rm *.txt

我被提示输入每个文件,因为我没有为rm指定-f选项.

但是当我这样做时:

find . -type f -name '*.txt' | xargs rm

在没有确认的情况下删除文件.

这背后的逻辑是什么?是否有可能在某些文档中找到原因?我无法解释为什么会出现这种情况.

解决方法:

您将rm命令的别名设置为’rm -i’.因此,如果您直接调用命令,请参阅

rm file.txt

要么

rm *.txt

别名将被扩展.如果您将使用xargs调用它

find . -type f -name '*.txt' | xargs rm

rm作为一个简单的字符串参数传递给xargs,稍后由xargs调用,不需要替换shell.
您的别名可能在〜/ .bashrc中定义,以防您要删除它.

上一篇:在Linux上反复移动文件


下一篇:Linux CMD 笔记 & 正则表达式