日期:2014-05-16  浏览次数:20869 次

linux shell 递归目录、文件夹
#!/bin/sh
#########################################
#desc:递归
#########################################
today=`date  +%Y%m%d`

isDir()
{
  local dirName=$1
  if [ ! -d $dirName ]; then
    return 1
  else
    return 0
  fi
}

recursionDir()
{

    local dir=$1
    if  isDir "${dir}"
        then :
        else
            echo "error,please pass a dirctory";
            exit 1
    fi

   echo "working in ${dir}"

    local filelist=`ls -tr "${dir}"`

    for filename in $filelist
    do
        local fullpath="${dir}"/"${filename}";
        if isDir "${fullpath}";then
                recursionDir "${fullpath}"
        else
                echo "file ${fullpath}" >> /home/Gzh/logs/$today.log
        fi
    done
}

recursionDir "$1"