Know-how für die Kommandozeile
Tipp: Aus Groß mach Klein: "mmv"
Wer oft Dateien zwischen Linux- und Windows-Systemen tauscht, stolpert über kurz oder lang über einen Mix aus Groß- und Kleinbuchstaben in den Dateinamen. Liegen auf dem Linux-Rechner beispielsweise zahlreiche Dateien in Großbuchstaben, die Sie alle lieber in Kleinschreibung sehen würden, müssen Sie nicht zum Dateimanager oder dem Kommando mv greifen und jede einzelne Datei umbenennen. Das Programm mmv ("multiple move") aus dem gleichnamigen Paket bietet eine elegante Lösung für dieses Problem. So wird aus Groß Klein:
$ mmv -v "*" "#l1" DATEI1.HTM -> datei1.htm : done DATEI2.HTM -> datei2.htm : done …
In dem gezeigten Kommando sorgt der Parameter -v dafür, dass mmv anzeigt, was es gerade tut. Über das Sternchen im ersten Argument sprechen Sie alle Dateien im aktuellen Verzeichnis an. Dieser Ausdruck – ebenso wie der nächste – sollte in Anführungszeichen stehen, damit die Shell die Sonderzeichen nicht interpretiert. Im zweiten Ausdruck wird #1 genau durch den Teil des Dateinamens ersetzt, auf den das Sternchen passt, also in diesem Fall durch den vollständigen Dateinamen. Steht zwischen dem Rautezeichen und der Ziffer noch der Buchstabe l (englisch "lower case" = Kleinbuchstaben), wandelt mmv alle großen in kleine Buchstaben um.
Ebenso schnell geht es in die andere Richtung: Ersetzen Sie dazu l durch u (englisch "upper case" = Großbuchstaben), also zum Beispiel:
$ mmv -v "*" "#u1" datei1.htm -> DATEI1.HTM : done datei2.htm -> DATEI2.HTM : done
Tipp: Tabula rasa mit "rm" und "rmdir"
Der Befehl rm löscht Dateien und das Kommando rmdir Verzeichnisse – so weit, so gut. Ein Verzeichnis, das allerdings noch Dateien oder Unterverzeichnisse enthält, werden Sie so nicht los. Abhilfe schafft die Option -r (rekursiv), die Sie zusammen mit dem Namen des Ordners an rm (und nicht rmdir) übergeben:
$ rmdir test rmdir: test: Directory not empty $ rm -r test $
Manchmal weigert sich rm dennoch, etwas zu löschen, beispielsweise, wenn die Schreibrechte fehlen. Sie sehen dann eine Abfrage der Form:
rm: reguläre Datei »datei« entfernen?
Tippen Sie dann [J] oder [Y] gefolgt von [Eingabe], verrichtet rm die Arbeit ohne zu murren. Alternativ teilen Sie dem Löschbefehl schon beim Aufruf mit, dass Sie derartige Sicherheitsabfragen nicht wünschen: rm -f löscht auch solche Daten. Die beiden Aufrufoptionen sind auch kombinierbar, so dass rm -rf rekursiv und ohne Nachfrage löscht.



