有关重命名
发表于 : 2009-11-10 11:29
求一脚本:
将文件 a.ps , a1.ps , a2.ps , ..... , a12.ps 重命名为 a01.ps , a02.ps , a03.ps , ..... , a13.ps
ee的脚本:
将文件 a.ps , a1.ps , a2.ps , ..... , a12.ps 重命名为 a01.ps , a02.ps , a03.ps , ..... , a13.ps
ee的脚本:
有更简单的吗?13:43:19-exp~/应用/脚本$● cat jpg改目录名.bash
#!/bin/bash
#整理当前目录下的jpg图片名字,按照目录名字排序。
dir=`pwd`
#[ $1 ] && dir=`dirname $1` && cd $dir;
dir=${dir##\/*\/}
#:>~/tmp
#echo $dir --- >>~/tmp
#pwd>>~/tmp
#exit 0
num=0
for i in *.jpg
do
#符合规则的文件不需要修改
if [ `expr match "$i" "${dir}-[0-9]*.jpg$"` != 0 ]; then
tmp=${i#"$dir"-}
tmp=${tmp%".jpg"}
# echo ${tmp} ----------------------
if [ "$tmp" -le "$num" ]; then
echo $i 符合规则,不修改。当前排序已到 $num。
continue
fi
fi
result="$dir"-$num.jpg
#防止覆盖已有文件
while [ -e "$result" ]
do
((num++))
result="$dir"-$num.jpg
done
# i=`echo $i | sed 's/\ /\\\ /g'`
# result=`echo $result | sed 's/\ /\\\ /g'`
# | sed 's/\(/\\\(/g' | sed 's/\)/\\\)/g'
echo $i '->' $result
mv "$i" "$result"
((num++))
done