从Subversion版本控制中删除空目录

・1 分钟阅读

 $ find . -name .svn -type d | while read ss; do dir=$(dirname "$ss"); test $(ls -a "$dir" | wc -l) == 3 && echo "svn rm "$dir""; done

说明

版本控制中的空目录,这些目录中有一个叫"svn"的子目录,没有其他文件或子目录。

  • "find"搜索名为.svn的文件文件,这些文件是目录,
  • "while"将输入中的每一行分配给变量ss
  • "dirname "获取路径的父目录,带有空格的路径需要引号,
  • 如果目录实际为空,就ls -a应输出3行 "" ,","还有"svn"
  • 如果测试结果为true,并且目录中只有3个文件,回显我们想要做的,
  • 如果输出看起来不错,请将它输送到|去执行,
Hujiuxiang profile image