来自给定输入的空文件夹列表

时间:2012-11-09 11:51:44

标签: linux bash shell scripting scripting-language

我有一个包含每天日志的目录。每个目录都使用此名称模式2012_07_012012_07_02格式化。

我想要的是从给定的$startdate$enddate进行检查,看看在开始和结束变量之间的任何时间之间是否存在搜索返回列表中的空文件夹。如果是这种情况,那么我从我的返回值列表中删除空文件夹。

对于那些包含文件的人,我希望在每个文件中搜索$startdate$enddate值。如果它们存在于任何目录中,那么我希望脚本返回我的文件名列表。

1 个答案:

答案 0 :(得分:1)

这是一个想法:

for dir in `ls | sort | sed -n "/$startdate/,/$enddate/p"` ; do
  if [ `ls $dir | wc -l` -gt 0 ] ; then
    ls $dir
  else
    rmdir $dir
  fi
done

另请注意,rmdir *只会删除空目录。