使用带有 -exec 选项的查找时"No such file or directory"



我正在尝试了解如何使用带有-exec选项的Linux find命令删除目录,而不会得到一个"没有这样的文件或目录";回答在我的树莓派上,我转到/home/Pi并键入:mkdir testing所以现在我创建了一个名为/home/pi/testing的新目录。接下来,我尝试使用以下命令删除目录:

find /home/pi/testing -type d -exec rm -rf {} ;

我得到以下回复:

find: '/home/pi/testing': No such file or directory

但是/home/pi/testing目录不见了。因此,这个命令似乎很有效,但为什么";没有这样的文件或目录";错误

Find正在尝试在删除该目录后进入该目录。如果将-depth选项添加到命令行,find将以深度优先模式运行,在该模式下,它将尝试在删除目录之前处理目录的内容:

find /home/pi/testing -depth -type d -exec rm -rf {} ;

也就是说,您的find命令行不是很有用:对于此操作,您通常只运行rm -rf /home/pi/testing

相关内容

最新更新