Christoph Zurnieden: Dateien umbenennen

Beitrag lesen

Hallo,

bash-2.02$ for i in ./*; do i=basename $i ; filename=echo $i | sed -e s/[0-9.]//g; suffix=echo $i | sed -e s/[^0-9]//g ; extname=printf $filename\.%04d $suffix; mv -v $i $extname ;done

(Bitte die Anführungszeichen beachten, das sind keine Abostrophe sondern grave Zeichen! Shift+')

Na gut, der war natürlich nur zum Verständnis, wie so etwas prinzipiell aufgebaut ist.
Einfacher wäre natürlich:

bash-2.02$ for i in *.*; do mv -v $i ${i%.*}.printf %04d ${i#\*.};done

so short

Christoph Zunrieden