现在的位置: 首页 > 综合 > 正文

Linux_shell脚本_遍历文件夹下所有文件 shell脚本遍历目录及其下子目录

2013年08月11日 ⁄ 综合 ⁄ 共 1071字 ⁄ 字号 评论关闭

#!/bin/bash
function ergodic(){
for file in
` ls $1`
do
                if
[
-d $1"/"$file#如果
file存在且是一个目录则为真

                then
                      ergodic $1"/"$file
                else
                      local path=$1"/"$file #得到文件的完整的目录
                      local name=$file       #得到文件的名字
                      #做自己的工作.
               fi

done
}
INIT_PATH="/home"
ergodic $INIT_PATH
 

shell脚本遍历目录及其下子目录

shell写了个递归遍历目录的脚本,本脚本实现递归遍历指定目录,打印目录下的文件名(全路径)。

 #!/bin/sh   
    
function scandir() {   
    local cur_dir parent_dir workdir   
    workdir=$1   
    cd ${workdir}  
 
    if [ ${workdir} = "/" ]   
    then   
        cur_dir=""   
    else   
        cur_dir=$(pwd)   
    fi   
 
   for dirlist in $(ls ${cur_dir})   
   do   
           if test -d ${dirlist}
        then   
           cd ${dirlist}   
           scandir ${cur_dir}/${dirlist}   
           cd ..   
       else   
          echo ${cur_dir}/${dirlist}
       fi   
   done   
}   
 
if test -d $1   
then   
   scandir $1   
elif test -f $1   
    then   
        echo "you input a file but not a directory,pls reinput and try again"   
           exit 1   
    else   
           echo "the Directory isn't exist which you input,pls input a new one!!"   
           exit 1   
fi 

抱歉!评论已关闭.