Ben Asked: 2010-04-10 06:34:45 +0800 CST2010-04-10 06:34:45 +0800 CST 2010-04-10 06:34:45 +0800 CST 在linux中递归删除特定目录 772 我不小心删除了我正在处理的站点根目录中的 .svn 文件夹。所以我需要从这个项目中删除所有.svn,重新结帐,然后用我拥有的东西覆盖那个结帐。问题是,我不确定如何递归删除 linux 中的目录。 linux 3 个回答 Voted Best Answer Scott Pack 2010-04-10T07:08:32+08:002010-04-10T07:08:32+08:00 听起来您想从树中删除 .svn 目录的所有实例,但保留所有其他数据不变。 find <checkout_root> -name .svn -type d -exec rm -rf {} \; grahamux 2010-04-10T07:10:21+08:002010-04-10T07:10:21+08:00 Find 使这项任务变得轻松。 $ find /path/to/files -name '.svn' -exec rm -rf {} \; 尽管您可能希望在删除文件之前先运行一个带有回显的文件以验证文件。 $ find /path/to/files -name '.svn' -exec echo {} \; Teddy 2010-04-10T07:47:11+08:002010-04-10T07:47:11+08:00 find /path/to/files -name .svn -type d -print0 \ | xargs --null --no-run-if-empty rm --recursive --force --
听起来您想从树中删除 .svn 目录的所有实例,但保留所有其他数据不变。
Find 使这项任务变得轻松。
$ find /path/to/files -name '.svn' -exec rm -rf {} \;
尽管您可能希望在删除文件之前先运行一个带有回显的文件以验证文件。
$ find /path/to/files -name '.svn' -exec echo {} \;