Kodama's home / tips.
規則的に番号づけするつもりが, いつのまにか不揃いになってしまったりとかすると面倒なので...
$ ls a001.txt a015.txt a025.txt a030.txt $ rename10.sh a* $ ls a010.txt a020.txt a030.txt a040.txt
#!/bin/sh # a0010.txt , a0020.txt のようなファイルを 10 毎の連番につけなおす. # rename01.sh : K.Kodama 2004-05 w=.$0.$$ mkdir $w n=0 for f in `ls $@` ; do if `echo $f | grep -q '[0-9]'` && [ -f $f ] ; then n=`expr $n '+' 1` n0=`echo 00${n}0 | sed -n 's/.*\(....$\)/\1/p'` f1=`echo $f.$n0 | sed -n 's/^\([^0-9]*\)\([0-9]*\)\(.*\)\.\([0-9]*\)$/\1\4\3/p'` mv $f $w/$f1 fi done cp $w/* . && rm $w/* && rmdir $w
Kodama's home / tips.