我有一个文件夹,里面有一个 .SVN 解决方案。
我想遍历整个目录及其子目录,并删除 .svn 文件夹。
我已经安装了 bash,所以我可以在需要时使用 grep。
find <path> -type d -name '.svn' -exec rm -rf {} \+
Run Code Online (Sandbox Code Playgroud)
查找名称为“.svn”的所有目录并递归删除它们。
如果您不拥有结帐目录并且不明白为什么会出现这些目录,我会非常谨慎地执行此操作。还要注意roe的回答 about svn export。
在 bash 中:
removesvn() {
cd $1
for f in */.svn; do
[ -d "$f" ] && removesvn ${f%/.svn}
done
[ -d "$f" ] && rm -rf .svn
}
removesvn .
Run Code Online (Sandbox Code Playgroud)
应该向下浏览包含 .svn 文件夹的所有文件夹并将其删除。
但是,您最好使用 svn 导出(svn export我相信)没有版本信息的香草树,这可能是您正在寻找的。
编辑
请注意,上面的 bash 脚本仅删除连接到原始文件夹的 .svn 文件夹(即,如果 b 不包含 .svn,则不会删除 a/b/c/.svn)。如果您只想清除文件系统中的 .svn 内容, find 可能会做得更好。
| 归档时间: |
|
| 查看次数: |
1649 次 |
| 最近记录: |