快速提问,如何递归删除特定扩展名的文件?我希望从项目中删除所有 .svn 文件夹。
rm -Rf www/ "*.svn"
上面的命令似乎删除了所有内容。我使用的是 FreeBSD。
谢谢
答案1
首先确保您对该列表感到满意。
find www -name '.svn' -type d -ls
限制于目录。SVN 总是命名它们.svn
。
find www -depth -name '.svn' -type d -exec rm -rf {} \;
答案2
我喜欢使用 xargs 命令,我发现它更直观,所以:
find www -name '.svn' -type d -print0 | xargs -0 rm -r
如果您想删除.svn 文件夹,如果您有兴趣删除文件:
find www -name '.svn' -type f -print0 | xargs -0 rm
或者你可以删除所有内容:
find www -name '.svn' -print0 | xargs -0 rm -r
如果您想确定要删除什么,请启动不带 xargs 的 find 命令:-)
祝你好运!
答案3
chdir 到工作目录并运行:
find . -iname '.svn' -exec rm -fr {} \;
或者您可以像这样指定路径目录:
find path -iname '.svn' -exec rm -fr {} \;