我正在编写一个删除每个找到的ShellScript。???文件夹及其内容。 我写了这个:
find $DRIVE -name 'found.???' -type d -exec rm -r {} \;
它做我想要的,但是给出了这个错误:
find: „/media/.../found.000”: No such file or directory
find: „/media/.../found.001”: No such file or directory
我该怎么办? 谢谢!
答案 0 :(得分:1)
这不是一个真正的问题。 find
将预处理一些结果,当它试图删除一些已被删除的目录时,你将获得stderr。
您可以忽略错误消息,使用-depth
使其在DFS中遍历,或强制它到-prune
目录。即
find "$DRIVE" -mindepth 1 -depth -name 'found.???' -type d -exec rm -r {} \;
或
find "$DRIVE" -mindepth 1 -name 'found.???' -type d -prune -exec rm -r {} \;
注意,mindepth 1
非常重要,因此您不会意外删除"$DRIVE"
答案 1 :(得分:0)
我猜你正在尝试填充基于FAT的fs。尝试展示这些文件名的真实案例:
find "$DRIVE" -name 'FOUND.???' -type d -exec rm -r {} \;
并引用你的变量。