您的位置:首页 > 运维架构 > Shell

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

2011-05-26 12:35 260 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: