删除文件

在一个目录里有多目录,每一个目录下有多个文件。删除长度为36的全部文件,别的文件保留离如今最近的那个,剩下的都删除。ide

 

cd /backup/p_w_picpaths/candy
for a in `ls`
do
    if [ -d $a ];then
    {
        for i in $(ls $a )
        do
            YLL=`echo $i | wc -L`
            if [ $YLL -eq 36 ];then
            {
                rm -f $a/$i
            }
            fi
        done
    }
    fi
doneit


for b in `ls`
do
    if [ -d $b ];then
    {
        cd $b
        ls -lat |grep ^-|awk 'NR>1{system("rm "$NF)}'
        cd /backup/p_w_picpaths/candy
    }
    fi
doneclass