使用find删除非空目录

使用find删除非空目录

我正在尝试sudo find . -type d -name '__pycache__' -delete 这里找到的https://github.com/python-mode/python-mode#how-to-install在 python-mode 的故障排除页面上。终端返回: find: 无法删除 'path' : 目录不为空。

有没有办法解决这个问题。令我惊讶的是,这不起作用,因为它确实在 python 模式自述文件中。

我在 Fedora 29 工作站上。

答案1

您可以使用exec选项来find使用外部命令来处理删除,例如rm -rf

例子:

sudo find . -type d -name '__pycache__' -exec rm -rf "{}" \;

注意:{}是文件路径的占位符,用于\;结束exec命令。看男人1找到更多细节

答案2

你可以做

sudo find . -type d -name '__pycache__' -exec rm -rf {} \;

或使用 xargs

sudo find . -type d -name 'test' | sudo xargs rm -rf

相关内容