Hallo, On Son, 11 Mär 2001, Christoph Raucher wrote:
Ein Ausschnitt aus dem Linux-Anwenderhandbuch von lunetix.de:
1 $ for i in *.foo; do 2 >base='basename $i .foo'
Das muessen backticks "`" sein, keine ticks "'".
3 >mv $i $base.bar 4 >done 5 $_
Besser ist sowieso mmv (IIRC): mmv "*.foo" "#1.bar" Oder: for file in *.foo; do mv $file `basename $file .foo` done Mit $() geht das auch und ist IMO auch besser lesbar, besonders wenn verschachtelt wird und/oder '' vorkommen, aber eben bash-spezifisch. Durchnumerieren: i=0; for f in *.foo; do echo mv $f ${f//.foo/$(printf "%0.4i" $i).bar}; i=$[i+1]; done Man kann die Ersetzung auch mit der bash machen kann (was ebenfalls bash-spezifisch ist: mv "$file" "${file//.foo/.bar}" CU David --
Die Probleme dieser Welt begannen, als der erst kam! Der erste was? M-e-n-s-c-h [in detebe]