claim.gif
Linux Magazin Linux User Easy Linux Ubuntu User International Linux Community
Erschienen in EasyLinux 02/2007   »   Ausgabe bestellen

Know-how für die Kommandozeile

Shell-Tipps

von Andrea Müller


Erfahrene Linux-Nutzer schwören auf flexible Kommandozeilen-Tools, mit denen sich manche Aufgabe schneller bewältigen lässt als in grafischen Programmen. Wir stellen die wichtigsten Anwendungen vor, um auch Einsteiger zu einem Ausflug in die Shell zu ermutigen.

Tipp: Wortweise in der Befehlszeile löschen

Haben Sie einen sehr langen Befehl eingegeben und dabei beispielsweise einen falschen Pfad erwischt, müssen Sie das Kommando nickt mit der Rückschritt-Taste buchstabenweise löschen. [Esc], [Rückschritt] oder [Alt-Rückschritt] löscht wortweise rückwärts. Dabei betrachtet die Bash nicht nur die Leerstelle als Wortgrenze, sondern auch \ und /, den Unterstrich, den Punkt und einige andere Zeichen. Haben Sie beispielsweise

cd dokument.pdf /tmp/kram/bilder

eingegeben, löscht [Esc], [Rückschritt] die Zeichenkette bilder.

Genauso schnell löschen Sie alles von der aktuellen Cursorposition bis zum Ende der Befehlszeile: Drücken Sie dazu einfach [Strg-K].

Tipp: Farben der Textkonsole ändern

Wenn erfahrene Linux-Nutzer von der Konsole sprechen, meinen sie meistens nicht das gleichnamige KDE-Programm, sondern eine der Textkonsolen, die Sie jederzeit über [Strg-Alt-F1] bis [Strg-Alt-F6] erreichen. Zurück zur grafischen Oberfläche gelangen Sie mit [Alt-F7]. Manchmal finden Sie sich auch ungewollt im Textmodus wieder -- etwa wenn die grafische Oberfläche nach einer Konfigurationsänderung oder dem Einspielen eines neuen Grafikkartentreibers nicht mehr startet.

Die Textkonsole erinnert mit dem schwarzen Hintergrund und der weißen Schrift an MS-DOS. Bei Mandriva Linux sehen Sie das klassische Bild nur auf den Konsolen, zu denen Sie mit [Strg-Alt-F2] bis [Strg-Alt-F6] wechseln, da der Distributor die erste mit einer Mandriva-Grafik hinterlegt hat.

Arbeiten Sie einmal im Textmodus, empfinden Sie die weiße Schrift auf schwarzem Grund vielleicht als ermüdend. Um die Farben zu invertieren und schwarze Schrift auf einem hellgrauen Hintergrund zu erhalten, geben Sie den Befehl

setterm -inversescreen on

ein. Alternativ benutzen Sie die Kurzform setterm -inv. Mit dem Kommando

setterm -inversescreen off

stellen Sie den Ursprungszustand wieder her.

Tipp: Zielverzeichnis beim Entpacken wählen

Das unter Linux gängige Tool zum Erstellen von Archiven heißt tar [1]. Sind die dabei entstandenen Dateien komprimiert, tragen Sie meistens eine der Endungen .tar.gz, .tgz oder .tar.bz2. Bei den ersten beiden kam gzip, bei dem letztgenannten bzip2 als Komprimierwerkzeug zum Einsatz.

Wenn Sie ein mit gzip komprimiertes Archiv nicht mit einem grafischen Programm wie Ark, sondern auf der Kommandozeile mit

tar -xvzf dokumente.tar

entpacken, landen die im Archiv steckenden Dateien und Verzeichnisse normalerweise im aktuellen Ordner. Hat derjenige, der das Archiv erstellt hat, die Dateien darin nicht in einem eigenen Verzeichnis verstaut, ist es nachher ziemlich lästig, von Hand aufzuräumen. In dem Fall bietet es sich an, vorher mit

tar -tvzf dokumente.tar

nur den Inhalt des Archivs anzuzeigen (Abbildung 1) und gegebenenfalls ein eigenes Unterverzeichnis für dessen Inhalt anzulegen. Möchten Sie sich diese Arbeitsschritte sparen, weisen Sie tar mit dem Aufrufparameter -C gefolgt vom Pfad zu einem Verzeichnis an, den Inhalt des Archivs dorthin zu entpacken. So landen mit dem Kommando

tar -C /home/andi/tmp/ -xvzf dokumente.tar

alle Archivdateien im Ordner /home/andi/tmp.

Abb. 1: Die Option "-t" beim "tar"-Aufruf bewirkt, dass das Programm den Inhalt des Archivs auflistet.

Tipp: Mit "mc" in RPM-Paketen stöbern

Der Dateimanager Midnight Commander ähnelt dem Norton Commander und ist dank der Kurzhilfe am unteren Fensterrand auch für kommandozeilenunerfahrene Benutzer leicht zu bedienen. Er kann allerdings noch mehr als Dateien kopieren, verschieben und löschen: Sie werfen mit ihm nicht nur einen Blick auf den Inhalt von tar-Archiven, sondern durchsuchen auch RPM-Pakete und kopieren Dateien daraus in ein anderes Verzeichnis. Das ist z. B. praktisch, wenn Sie Gnome als Arbeitsoberfläche nutzen, aber gerne die Hintergrundbilder des KDE-Desktops oder eines anderen Fenstermanagers verwenden wollen, ohne die entsprechenden Pakete zu installieren.

Um Dateien im Mindnight Commander aus einem RPM-Paket auf die Festplatte zu kopieren, starten Sie den Dateimanager mit dem Befehl mc und wechseln in den Ordner, in dem das Paket liegt. Markieren Sie es mit den Pfeiltasten und drücken Sie [Eingabe]. Bewegen Sie sich dort auf die Datei CONTENTS.cpio und drücken Sie nochmal [Eingabe], um den Inhalt des RPM-Pakets zu durchstöbern (Abbildung 2).

Möchten Sie eine Datei aus dem Paket auf die Festplatte kopieren, markieren Sie diese und drücken [F5], um sie in das Verzeichnis in der rechten Fensterhälfte zu kopieren.

Abb. 2: Mit dem Dateimanager Midnight Commander werfen Sie einen Blick auf den Inhalt eines RPM-Pakets.

Unter Distributionen, die RPM als Paketformat nutzen, kann der Midnight Commander von Haus aus den Inhalt der Pakete anzeigen. Damit das auch unter Kubuntu gelingt, installieren Sie dort als Benutzer root zunächst mit apt get install rpm das Paket rpm, auf das mc beim Anzeigen des Paketinhalts zurückgreift.

Tipp: Inhalt von Debian-Pakete inspizieren

So wie der Midnight Commander unter RPM-basierten Distributionen RPM-Pakete öffnen kann, kennt er unter Kubuntu Debian-Pakete mit der Dateiendung .deb. Diese können Sie mit [Eingabe] betreten und den Inhalt durchforsten, beispielsweise wenn Sie vor der Installation eines Programms einen Blick in die Dokumentation werfen wollen.

Benutzer von Suse und Mandriva Linux sind hier im Nachteil, da der Midnight Commander sich weigert, Dateien mit der Endung .deb zu öffnen. Er versucht, das Programm dpkg aufzurufen -- für die Debian-Paketverwaltung bringen jedoch weder Suse noch Mandriva Linux ein Paket mit. Trotzdem müssen Sie auch unter diesen Distributionen nicht darauf verzichten, sich den Inhalt eines .deb-Pakets anzusehen: Es handelt sich um Archive, die mit ar erstellt wurden und dieses Programm ist bei Ihnen schon installiert.

Jetzt gilt es nur, eine passende Aktion für Dateien mit der Endung .deb im Midnight Commander zu definieren. Diese legen Sie in der Datei bindings fest, die Sie über Command / Edit extension file im Texteditor mcedit öffnen. Bewegen Sie sich in der Datei nach unten, bis Sie den Abschnitt Archives erreichen. Fügen Sie dort den Abschnitt

# dpkg-Paket
regex/\.deb
    Open=%cd %p#uar
    View=%view{ascii} file %f && nm %f

ein (Abbildung 3) und speichern Sie die Änderung mit [F2]. Ein Druck auf [F10] beendet mcedit. Wenn Sie nun ein Debian-Paket markieren und [Eingabe] drücken, finden Sie dort mindestens die Dateien control.tar.gz und data.tar.gz. Die letztgenannte enthält die Dateien des Programmpakets, und um einen Blick hinein zu werfen, markieren Sie diese und drücken [Eingabe].

Abb. 3: Mit diesem Abschnitt in der Datei "bindings" ruft der Midnight Commander statt "dpkg" das Programm "ar" auf, um den Inhalt von Debian-Paketen anzuzeigen.

Tipp: Verzeichnisbäume mit "mkdir" anlegen

Auf der Kommandozeile legt der Befehl mkdir einen neuen Ordner an. So erstellt mkdir dokumente den Ordner dokumente im aktuellen Verzeichnis. Um die Übersicht zu bewahren, legen Sie darunter vielleicht noch den Unterordner privat und darunter weitere Verzeichnisse an. Möchten Sie mit mkdir dokumente/privat/rechnungen gleich mehrere Verzeinisse anlegen, quittiert das Programm den Versuch mit einer Fehlermeldung, wenn es die Ordner dokumente und privat noch nicht gibt.

In solchen Fällen erspart Ihnen der Aufrufparameter -p einiges an Tipparbeit: Damit erstellt das Programm auch noch nicht vorhandene übergeordnete Verzeichnisse (parent directories, auf Deutsch Elternverzeichnisse). Der Befehl mkdir -p dokumente/privat/rechnungen legt alle drei Ordner in einem Rutsch an.

Tipp: Dateien mit Minuszeichen löschen

Haben Sie im Konqueror eine Datei angelegt, deren Name mit einem Minuszeichen beginnt, können Sie diese auf der Kommandozeile nicht ohne Weiteres löschen oder kopieren. Der Befehl rm -test verweigert Ihnen mit der Meldung rm: Ungültige Option -- t die Zusammenarbeit. Das liegt daran, dass rm alles, was nach dem Minuszeichen folgt, als Aufrufparameter interpretiert. Nun könnten Sie die Datei natürlich im Konqueror wieder löschen, doch es geht auch in der Shell: Eine Möglichkeit ist es, beim rm-Befehl den absoluten oder relativen Pfad zu der Datei anzugeben, also entweder rm /home/andi/-test oder rm ./-test, wenn die Datei im aktuellen Verzeichnis liegt. Alternativ löschen Sie Dateien, deren Namen mit einem Minuszeichen beginnen, mit dem Kommando

rm -- -test

Die beiden Minuszeichen signalisieren rm, dass keine weiteren Parameter mehr folgen und dass es alles dahinter als Argument betrachten soll. Die Tricks mit der Angabe des Pfades und den beiden Minuszeichen funktionieren nicht nur mit rm, sondern auch mit anderen Tools wie cp, mv und touch. (amü)

Infos
[1] Artikel über Archivieren und Komprimieren: Heike Jurzik, "Eingepackt und abgelegt", EasyLinux 03/2006, S. 88 ff.

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Druckerfreundliche Version | Feedback zu dieser Seite | Datenschutz | © 2021 COMPUTEC MEDIA GmbH | Last modified: 2008-11-05 17:26

[Linux-Magazin] [LinuxUser] [Linux-Community]