[linux-l] Anfangsbuchstaben-Umwandlung von Dateien auf der Konsole
Lutz Meinert
lutz.meinert at madvedge.de
Fr Jun 4 21:46:55 CEST 2004
Vielen Dank für die tollen Alternativen!
On Fri, 2004-06-04 at 11:13, Jens Dreger wrote:
> ...
> ls | perl -lne '$new=lcfirst; rename $_,$new;'
>
> Mein erstes Beispiel mit rename hatte die Files von "atest" nach
> "Atest" umbenannt, das zweite direkt mit perl daher wieder zurueck
> zu "atest". Du muesstest ucfirst schreiben, wenn Du sie gross haben
> willst. An Stelle kannst Du auch einen regex schreiben, z.B.
> $new=$_; s/blah/blub/; rename $_,$new;'
Sorry, habe ich ich im Anfall morgendlicher Umnachtung übersehen.
Funktioniert prächtig!
On Fri, 2004-06-04 at 11:35, Marek Froehlich wrote:
> ...
# Alle Files nach Gross
> perl -e 'map { -f $_ && rename($_,ucfirst) } <*>'
> # Alle Files nach Klein
> perl -e 'map { -f $_ && rename($_,lcfirst) } <*>'
>
> Wenn rekursiv in verzeichnisse gehen soll, benutze File::Find.
Auch ausgesprochen tippfreundlich und funktioniert hervorragend.
Ich sollte mich wirklich mal näher mit perl beschäftigen...
On Fri, 2004-06-04 at 09:30, Kendy Kutzner wrote:
> ...
> for a in * ; do mv "$a" "`echo $a | head -c 1 | tr A-Z a-z``echo $a | sed -e 's/.//'`" ; done
> for a in * ; do mv "$a" "`echo $a | head -c 1 | tr a-z A-Z``echo $a | sed -e 's/.//'`" ; done
Ist zwar länger als die Perl-Lösungen aber kürzer und eleganter als
mein Eigenbau und für mich als (noch) perl-Unkundiger natürlich auch vertrauter.
Danke nochmals und beste Grüße
Lutz
--
Lutz Meinert <lutz.meinert at madvedge.de>
Mehr Informationen über die Mailingliste linux-l