$ tar --append Tarball1 Tarball2
Die Option -u frischt den Inhalt eines Archivs mit neueren Versionen der enthaltenen Dateien auf, mittels --diff vergleichen Sie zwei Tarballs.
Das vierte Kompressionskommando, cpio, ist über die Jahre etwas aus der Mode gekommen, nicht zuletzt deshalb, weil es in der Handhabung etwas Umstände macht. Um ein Archiv zu erzeugen, beschickt man es in der Regel via ls mit einem Eingabedatenstrom, den man es dann in eine Ausgabedatei schreiben lässt:
$ ls | cpio Optionen -o > Archiv.cpio
Hartgesottene Unix-Administratoren lieben Cpio, weil es ähnliche Fähigkeiten wie Tar bietet, aber noch mehr Optionen und Kompressionsformate kennt sowie vielfältige Möglichkeiten bietet, die in Archiven gelagerten Dateien einzusehen und sogar zu bearbeiten. Als normaler Anwender werden Sie aber kaum jemals in die Verlegenheit geraten, Hand an Cpio-Archive zu legen.
Globbing
Einer der Gründe für die Mächtigkeit von Shell-Befehlen liegt darin, dass sie sich auf mehrere Dateien gleichzeitig anwenden lassen. Bei vielen Kommandos können Sie eine durch Leerzeichen getrennte Liste von Dateien übergeben. Viel präziser und effizienter gelingt der Umgang mit mehreren Dateien allerdings über das sogenannte Globbing. Der vom englischen Wort für Klecks oder Klümpchen abgeleitete Begriff bezeichnet eine musterbasierte Suche (“pattern matching”) auf der Basis von Platzhalterzeichen – den sogenannten Wildcards – oder Suchmustern, die man “reguläre Ausdrücke” nennt.
Das in der Bash-Shell am häufigsten verwendete Wildcard-Zeichen ist der Asterisk (*), der für eine beliebige Anzahl beliebiger Zeichen steht. Er kommt meist zum Einsatz, um Dateien mit derselben Dateinamenserweiterung zu finden. So gibt der Befehl ls *.png alle PNG-Grafiken im aktuellen Verzeichnis aus. Das Fragezeichen dagegen steht als Platzhalter für genau ein beliebiges Zeichen. Tippen Sie beispielsweise ls bild?.png, erhalten Sie als Treffer Dateien wie bild1.png oder bild2.png, nicht aber bild10.png – Letzteres enthält ja nach bild noch zwei weitere Zeichen, nicht nur eins.
Mit Suchmustern lässt sich das Globbing wesentlich präziser gestalten. Um eine Gruppe bestimmter Zeichen anzugeben, setzen Sie diese in eckige Klammern. So trifft der Ausdruck bild[12].png auf die Dateien bild1.png und bild2.png zu, nicht aber auf bild3.png oder bild12.png. Durch ein vorangestelltes ^ negieren Sie den Ausdruck und erhalten als Treffer alle Dateien, auf die das Suchmuster nicht zutrifft (Abbildung 6).
Solche Suchmuster decken allerdings nur einen kleinen Ausschnitt der Möglichkeiten ab, die klassische reguläre Ausdrücke, sogenannte Regexe, bieten. Hier können Sie ganze Zeichenklassen und Zeichenbereiche verwenden, die Suche auf Zeilen- oder Wortanfänge beschränken, und vieles andere mehr [3]. Dabei handelt es sich zwar um eine Kunst, die etwas Übung erfordert, doch der Aufwand lohnt sich.
Generell sollten Sie aber bei der Benutzung von Globbing stets Vorsicht walten lassen. Bevor Sie Kommandos wie mv oder gar rm per Mustersuche auf zahlreiche Dateien loslassen, sollten Sie zur Sicherheit vorab anhand eines ungefährlichen Befehls wie ls überprüfen, welche Dateien das Suchmuster erfasst. Anderenfalls könnte eine unangenehme Überraschung ins Haus stehen.
Fazit
Die Kommandozeilenbefehle für die Dateiverwaltung unter Linux haben fast alle eine lange (Unix-)Vorgeschichte hinter sich, in der die meisten zahlreiche Optionen angesammelt haben. Glücklicherweise wirken einige davon bei den meisten Kommandos gleich.
So können Sie in der Regel davon ausgehen, dass -r (“recursive”) für das Einschließen von Unterverzeichnissen und deren Inhalt steht und -v (“verbose”) den Befehl dazu veranlasst, während des Ablaufs eine genaue Beschreibung der gerade vorgenommenen Tätigkeiten auszugeben. Der Schalter -f (“force”) erzwingt die Ausführung des Erwünschten, ungeachtet negativer Konsequenzen und möglicher Fehler. Die Option -i (“interactive”) sorgt dafür, dass sich das Programm jede Aktion erst einmal von Ihnen bestätigen lässt, bevor es sie ausführt.
Trotz solcher Erleichterungen erfordert ein effektiver Umgang mit den Dateiverwaltungsbefehlen auf der Kommandozeile etwas Übung. Investieren Sie aber die erforderliche Zeit zum Erlernen der Kommandos und deren Optionen, dann werden Sie schnell verstehen, warum erfahrene Anwender die Arbeit auf der Kommandozeile jener in der grafischen Oberfläche vorziehen.
Infos
- Dd: Heike Jurzik, “Spiegelbildlich”, LU 06/2006, S. 102, http://www.linux-community.de/9888
- Archivierer im Vergleich: Martin Steigerwald, “Zip und Zop”, LU 10/2010, S. 68, http://www.linux-community.de/20298
- Reguläre Ausdrücke: Frank Hofmann, “Schnipseljagd”, LU 09/2011, S. 84, http://www.linux-community.de/24091






