shell脚本遍历当前目录下以数字命名的目录,并打印

#!/bin/bash

single=''  #定义以个位数为目录的集合
double=''  #定位十位数为目录的集合
#按照需要可以根据实际情况再定义以百位数为目录的集合

for dir in `ls -d [0-9]*` #开始遍历
do
if [ `ls -d [0-9]* | wc -l` -ge 10 ];then  #判断当前的目录总数是否大于等于10
if [ `echo $dir | wc -c` = 2 ];then  #判断是否为个位数的目录
single="${single} $dir"  #加入到集合中
else
double="${double} $dir"  #加入到集合中
fi
fi

done

for dirname in ${single}
do
echo "#TODO $dirname"
done
for dirname in ${double}
do
echo "#TODO $dirname"
done

#echo ${single}
#echo ${double}

遍历目录,并删除掉一些目录的方法
#!/bin/bash

root_path="/opt/path"
for dir in `ls ./`
do
        cd "${root_path}/${dir}"
        echo "${dir}==dir"
        for subdir in `ls ./`
        do
                cd "${root_path}/${dir}/${subdir}"
                echo "${subdir}==sub dir."
                for ssdir in `ls -t | awk 'NR>40{print $1}'`
                do
                        echo "ssdir==${ssdir}"
                        echo "abs path=${root_path}/${dir}/${subdir}/${ssdir}/"
                        rm -rf ${root_path}/${dir}/${subdir}/${ssdir}
                        ls ${root_path}/${dir}/${subdir}/${ssdir}
                done
        done

done

all_ports=`echo ${all_ports} | sed -e "s/,${port},/,/g"`
change(){ rep
=$1 posts=`get_port` port=`echo ${posts} | awk -F , '{print $2}'` ja="ja_co_co=\" -javaagent:${JACOCOAGENT}=includes=\*,output=tcpserver,port=${port},address=\*,append=true\"" if [ -f "${ss}" ];then echo "${rep} === ${posts}" echo "${ss}" sed -i "/^[[:space:]]*nohup java/i\\${ja}" ${ss} sed -i "s/^[[:space:]]*nohup java/& \$\{ja_co_co\}/g" ${ss} #sed -i "/^${rep}/a${rep}=\"\ \$\{${rep}\}\ ${arg}\ \"" ${ss} fi }

 





posted @ 2017-04-27 15:45  wozijisun  阅读(1660)  评论(0编辑  收藏  举报