我可以在终端中输入什么命令,以便我可以删除.svn
文件夹内的所有文件夹(以及所有子目录),但不删除其他任何内容?
答案1
cd to/dir/where/you/want/to/start
find . -type d -name '.svn' -print -exec rm -rf {} \;
- 使用 find,它执行递归
- 在当前目录中。
- 文件类型是目录
- 文件名为 .svn
- 打印出到目前为止匹配的内容(.svn 目录)
- 执行命令
rm -rf (thing found from find)
。{} 是找到的实体的占位符 - ; 告诉 find exec 命令已完成。由于 shell 也知道 ; 是什么,因此您需要使用 \ 对其进行转义,以便 shell 不会对其执行任何特殊操作,而只是传递给 find