LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: qinhu

怎样递归删除一个目录下的很多这样的空文件夹

[复制链接]
发表于 2006-3-18 13:20:07 | 显示全部楼层
删除了,还有什么问题呢?
回复 支持 反对

使用道具 举报

发表于 2006-3-18 15:56:21 | 显示全部楼层
涉及到数据结构,有难度;也很有趣,把它叫做“裁剪枯枝”如何?
回复 支持 反对

使用道具 举报

发表于 2012-3-5 14:40:42 | 显示全部楼层
這個腳本可以從路徑最深處開始刪除空目錄,即是樓上所說「裁剪枯枝」,不知到是不是樓主曾經需要的。

---------------------------------------begin----------------------------------------

#!/bin/bash

duke_ergod()
{
  is_clean=1;

  # get in if any folder exist.
  for x in *
  do
      if [ -d "$x" ];then
          cd "$x";
          duke_ergod;
          cd ..
      fi
  done

  # now, no any folder

  # get in if any file exist, and clear flag is_clean = 0.
  for x in *
  do
      if [ -e "$x" ] ;then
          is_clean=0;
      fi
  done

  # current folder is clean if is_clean == 1, then delete current folder.
  if [ $is_clean == 1 ];then
      rm -r "`pwd`"
  fi
}

duke_ergod

-------------------------------------------end----------------------------------------
回复 支持 反对

使用道具 举报

发表于 2012-3-8 03:18:11 | 显示全部楼层

  1. $ while read line
  2. > do
  3. > rmdir -p $line
  4. > done <<<"`find test/ -type d | sort -r`"
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表