Portál AbcLinuxu, 5. listopadu 2025 20:55
-d1.jpg
-d2.jpg
...
-d100.jpg
Chtel bych docilit jednim prikazem toho, aby byly prejmenovany do podoby bez pomlcky
. Tedy takto:
d1.jpg
d2.jpg
...
d100.jpg
Pouziti rename 's/\-//' * neni mozne, protoze bash chape kazdy soubor jako prepinac. Zkousel jsem i toto: for file in *jpg; do mv $file XXX$file; done, ale interpret neni schopny to pochopit. Z druheho prikladu vyplyva, ze mi staci, kdyz docilim toho, aby ta pomlcka nebyla na zacatku
. Diky.
find s option exec.
bash (toho nějaká pomlčka nezajímá), ale samotný příkaz rename resp. mv. Řešením je buď použít '--' na začátku seznamu jmen souborů (funguje u příkazů, které používají systémovou verzi getopt()) nebo to zapsat tak, aby na začátku nebyla pomlčka, např. './*' nebo './$file'.
for F in *.jpg
do
mv "$F" "${F#-}"
done
- mv "$F" "${F#-}"
+ mv -- "$F" "${F#-}"
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.