我意外删除了我正在工作的站点根目录中的 .svn 文件夹。因此,我需要从此项目中删除所有 .svn,重新签出,然后用我已有的内容覆盖该签出。问题是,我不确定如何在 Linux 中递归删除目录。
答案1
听起来您想从树中删除 .svn 目录的所有实例,但保留所有其他数据不变。
find <checkout_root> -name .svn -type d -exec rm -rf {} \;
答案2
Find 使这个任务变得轻松。
$ find /path/to/files -name '.svn' -exec rm -rf {} \;
不过,您可能希望在删除文件之前先运行一个带有 echo 的程序来验证文件。
$ find /path/to/files -name '.svn' -exec echo {} \;
答案3
find /path/to/files -name .svn -type d -print0 \
| xargs --null --no-run-if-empty rm --recursive --force --