rm -irf -Irf with find


1

以下声明为什么在使用选项i或我为rm时不要求确认?

// pass aggregated 
find . -name $name -type d -exec rm -irf {} \;
// pass each
find . -name $name -type d -exec rm -irf {} +

Answers:


0

-i 选项要求确认但是 -f 在命令后面的选项会覆盖它,关闭确认对话框。

注意:

$ rm -fri file1
rm: remove regular empty file 'file1'? n
$ rm -irf file1
$ 

如果是上面的第一个表格, -f 出现在第一位 -i 后者。所以, -i 覆盖 -frm 要求确认。

在上面的第二种形式中, -i 出现在第一位 -f 后者。在这种情况下, -f 覆盖,不显示确认对话框。

文档

man rm

-f, - force
忽略不存在的文件和参数,永远不会提示

-一世
每次删除前提示

-一世
在删除三个以上的文件之前提示一次,或者在递归删除时提示;比-i更少侵入,同时仍然给予    防止大多数错误


1
所以它应该只是-ir或-Ir :)而不强制
ceph3us

什么是使用-I或-i和+或\来防止有害删除的最佳方式(匹配); ?
ceph3us

@ ceph3us是的,省略了 -f。选项 -i 提供更多的保护 -I。如果你正在使用 -i, 然后 find ...\;find ...+ 两者都是同样安全的,后者的计算效率更高。
John1024
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.