linux-l: namen ändern
Jens Dreger
dreger at physik.fu-berlin.de
Di Nov 16 21:01:44 CET 1999
On Tue, 16 Nov 1999, Ulrich Wiederhold wrote:
> Hallo,
> ich bins nochmal!
> Kennt jemand von Euch ein Programm mit dem man
> aus Datei- und Verzeichnisnamen alle Zeichen wie
> space, ´ ,` . usw. entfernen kann?
perl. (okok, emacs bestimmt auch irgendwie, aber nehmen wir mal perl...)
-----8<----------------
#!/usr/bin/perl -w
while( $_ = shift @ARGV ) {
$file = $_;
s/[!:,; \'\`\"\\)(]//goi;
unless( $file ne $_ && !-e $_ ) {
print "$file -> $_\n";
rename $file,$_;
}
}
---------8<------------
als stdchar (oder was weiss ich) abspeichern. Dann kannst Du sowas wie
find . -type f -print0 | xargs -0 stdchar
aufrufen. Vielleicht probierst Du's vorher nochmal mit auskommentierter
rename-Zeile ;-)
Das Script ueberschreibt keine bestehenden Files (!-e $_).
Jens.
________________________________________________________________________
Jens Dreger | Freie Universitaet Berlin
Cauerstrasse 35a | Fachbereich Physik, WWW Administration
10587 Berlin | Arnimallee 14
Tel: (030)342-3616 | 14195 Berlin
Mehr Informationen über die Mailingliste linux-l