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

Know-how für die Kommandozeile

Shell-Tipps

von Andrea Müller


Arbeiten auf der Kommandozeile ist nicht nur etwas für erfahrene Nutzer, die sogar die kryptischsten Befehle auswendig kennen. Komfortable Tools und praktische Abkürzungen sorgen dafür, dass auch Linux-Neulinge sich leicht mit der Shell anfreunden.

Tipp: Einzelne Befehle mit "su" ausführen

Um schnell etwas mit root-Rechten zu erledigen, etwa einen Blick in die Log-Dateien des Systems zu werfen, eignet sich der Befehl su. Nach der Eingabe des Administatorpassworts arbeiten Sie als root. Mit exit oder [Strg-D] wechseln Sie zurück zum normalen Benutzerkonto. Um nur einen Befehl als Administrator auszuführen, kennt su den Parameter -c (für command) gefolgt von dem gewünschten Befehl. So zeigt

su -c "less /var/log/messages"

nach Eingabe des Passworts die Protokolldatei /var/log/messages in less an. Da der Befehl eine Leerstelle enthält, müssen Sie ihn in Anführungszeichen setzen. Sobald Sie less mit [Q] beenden, arbeiten Sie wieder als normaler Benutzer.

Möchten Sie unter Suse Linux ein grafisches Programm als root starten, verwenden Sie statt su das KDE-Programm kdesu, also etwa

kdesu -c "kwrite /etc/fstab"

um die Datei /etc/fstab im Text-Editor KWrite zu öffnen. kdesu erlaubt es Ihnen unter Suse Linux, auch als nicht angemeldeter Benutzer auf die grafische Oberfläche zuzugreifen. Wer unter Mandriva Linux 2006 mit der Sicherheitsebene Standard arbeitet, hat diese Probleme nicht, da die Distribution root automatisch den Zugriff auf grafische Programme gestattet, wenn Sie als normaler Nutzer mit su zum Administrator werden.

Tipp: "cat"-Ausgabe mit Zeilennummern

Wenn ein Skript mit einem Fehler abbricht, gibt es oft die Zeilennummer aus, in welcher der Fehler auftritt. Um schnell zu schauen, welcher Befehl dort steht, und um festzustellen, ob man den Fehler eventuell selbst korrigieren kann, reicht es, mit cat dateiname einen Blick in das Skript zu werfen. Mit dem Aufrufparameter -n gestartet, zeigt das Programm sogar die Zeilennummern an (Abbildung 1). Bei langen Skripten sollten Sie die Ausgabe des Befehls mit

cat -n datei | less

an den Betrachter less weiterleiten [2]. Das Pipe-Zeichen (|) erhalten Sie mit [AltGr-<].

Abb. 1: Mit dem Parameter "-n" aufgerufen, zeigt "cat" die Zeilen einer Datei mit vorangestellten Zeilennummern an.

Tipp: Schneller Wechsel ins Home-Verzeichnis

Shell-Anfänger verlieren bei der Navigation in den tiefen Linux-Verzeichnisstrukturen schnell den Überblick. Um zu erfahren, in welchem Ordner Sie sich befinden, geben Sie pwd ein. Dieser Befehl verrät Ihnen das aktuelle Arbeitsverzeichnis. Wenn Sie von dort wieder in Ihr Home-Verzeichnis wechseln wollen, müssen Sie nicht

cd /home/benutzername

tippen: viel schneller gelangen Sie mit cd zurück ins Home-Verzeichnis.

Tipp: Zurück in den letzten Ordner

Wenn man gerade aus einem Unterordner mit langem Pfadnamen wieder ins Home-Verzeichnis gewechselt ist und feststellt, dass man im vorigen eigentlich noch etwas hätte erledigen müssen, ist das ärgerlich. Die Bash kennt jedoch ein praktisches Kürzel, mit dem Sie sich die Eingabe des vollen Pfads zum vorherigen Arbeitsverzeichnis sparen: Geben Sie

cd -

ein, um zurück in den letzten Ordner zu wechseln. Rufen Sie den Befehl erneut auf, gelangen Sie wieder zurück ins letzte Verzeichnis, so dass Sie mit wiederholter Eingabe von cd - bequem zwischen zwei Ordnern hin- und herspringen.

Tipp: Buchstaben unter dem Cursor vertauschen

Buchstabendreher gehören zu den häufigsten Tippfehlern. Gerade bei Schnellschreibern steht leicht einmal sl statt ls in der Befehlszeile. Solche Fehler korrigieren Sie besonders flink mit [Strg-T]: Setzen Sie den Cursor auf den zweiten falschen Buchstaben und drücken Sie die Tastenkombination, um ihn mit dem Zeichen davor zu vertauschen.

Tipp: Konsolenfenster per Shortcut leeren

Der Befehl clear entfernt die Ausgaben der letzten Befehle aus der Konsole und beschert Ihnen ein leeres Fenster. Tippfaule erreichen denselben Effekt mit [Strg-L].

Mit Hilfe der Scroll-Balken gelangen Sie danach trotzdem noch zurück zu den letzten Befehlen und deren Ausgabe. Arbeiten Sie mit der KDE-Konsole, verhindern Sie das, indem Sie über Bearbeiten / Verlaufsspeicher löschen die alten Kommandos entfernen. Alternativ deaktivieren Sie den Verlauf über Einstellungen / Verlaufsspeicher. Das ist jedoch unpraktisch, da Sie dann gar nicht mehr zurückblättern können.

Tipp: "head" für mehrere Dateien

Mit dem Befehl head dateiname zeigen Sie die ersten zehn Zeilen einer Datei an. Geben Sie stattdessen

head -3 dateiname

ein, sehen Sie nur die ersten drei Zeilen der Datei. Der Befehl, der die letzten zehn Zeilen einer Datei anzeigt, heißt tail. Beiden Kommandos können Sie sogar mehrere Dateinamen übergeben. Rufen Sie beispielsweise

head text1.txt config test.txt

auf, zeigt das Programm die ersten zehn Zeilen der Dateien an und schreibt vor jeden Abschnitt den jeweiligen Dateinamen (Abbildung 2). Auch die Ausgabe dieses Befehls können Sie mit dem Pipe-Zeichen (|) an less weiterleiten, um mit [Bild auf] und [Bild ab] in der Ausgabe zu blättern. Der Aufruf lässt sich mit der Angabe einer Zeilenzahl kombinieren, so dass Sie selbst bestimmen, wie viele Zeilen der Dateien head und tail ausgeben. (amü)

Abb. 2: Wenn Sie mehrere Dateien mit "head" öffnen, zeigt das Programm von jeder den Dateinamen und die ersten zehn Zeilen an.
Suse Linux: Online Update auf Kommando

Suse-Linux-Anwender, die ihr System mit dem Online Update über das Internet auf dem neuesten Stand halten, müssen sich nicht erst durch YaST klicken, um die fehlerbereinigten Pakete herunterzuladen. Besonders schnell starten Sie das Update auf der Kommandozeile über den Befehl you. Dabei handelt es sich um ein Alias [3], das der Distributor eingerichtet hat. Wenn Sie you eingeben, führt die Shell das Kommando

su - -c "/sbin/yast2 online_update"

aus. Daraufhin startet das Update-Modul von YaST, und Sie müssen nur noch auf Weiter klicken, um die Liste der aktualisierten Pakete herunterzuladen.

Einen Haken hat die Sache allerdings: Wenn Sie den Befehl eingeben, erhalten Sie nach der Eingabe des root-Passworts die Fehlermeldung Xlib: connection to ":0.0" refused by server" und der Update-Dialog startet nicht. Das liegt daran, dass unter Suse Linux nur der angemeldete Benutzer Zugriff auf den X Server, das grafische System von Linux, hat [4]. Der Befehl funktioniert daher erst einmal nur auf Textkonsolen, die Sie mit einem Druck auf [Strg-Alt-F1] bis [Strg-Alt-F6] erreichen. Zurück zur grafischen Oberfläche gelangen Sie mit [Alt-F7]. Dann meldet sich YaST im Textmodus, und Sie müssen mit Hilfe der Tastatur durch die Paketliste navigieren.

Mit einem Trick sorgen Sie dafür, dass das Befehlskürzel auch auf der grafischen Oberfläche funktioniert: Dazu passen Sie einfach die systemweite Aliasdefinition an. Sie befindet sich in der Datei /etc/bash.bashrc, die Sie nur als root ändern dürfen. Öffnen Sie diese daher mit dem Kommando kdesu kwrite /etc/bash.bashrc im KDE-Text-Editor. Drücken Sie [Strg-F] und geben Sie als Suchbegriff online ein. KWrite springt zur richtigen Stelle in der Datei, unter Suse Linux 10.0 in Zeile 212. Ersetzen Sie dort su durch kdesu, mit dessen Hilfe Sie auch als root grafische Programme starten, und speichern Sie die Datei. Die Zeile sollte so aussehen wie in Abbildung 3.

Nun geben Sie in einer neu geöffneten Konsole einfach you ein, um das System auf den neuesten Stand zu bringen. Im Textmodus funktioniert der Befehl jetzt allerdings nicht mehr, da kdesu ein Fenster für die Passworteingabe öffnet.

Abb. 3: Indem Sie "su" durch "kdesu" ersetzen, sorgen Sie dafür, dass das Alias "you" auf der grafischen Oberfläche funktioniert.

Infos
[1] Artikel über "su" und "sudo": Heike Jurzik, "Doppelgänger", EasyLinux 11/2004, S. 77 ff., http://www.easylinux.de/2004/11/077-guru-sudo/
[2] Artikel über Umleitungen in der Shell: Heike Jurzik, "Genial gelenkig", EasyLinux 09/2005, S. 84 ff., http://www.easylinux.de/2005/09/084-umleitungen/
[3] Alias-Artikel: Elisabeth Bauer, "Schleichwege", EasyLinux 07/2004, S. 82 f., http://www.easylinux.de/2004/07/082-bash/
[4] Artikel über den Zugriff auf X: Andrea Müller, "Einmal Root und zurück", EasyLinux 07/03, S.48 f., http://www.easylinux.de/2003/07/048-kdesu/index.html

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 | © 2012 Linux New Media AG | Last modified: 2007-04-05 11:24

[Linux-Magazin] [LinuxUser] [Linux-Community] [Admin-Magazin] [Ubuntu User] [Smart Developer] [Linux Events] [Linux Magazine] [Ubuntu User] [Admin Magazine] [Smart Developer] [Linux Magazine Poland] [Linux Community Poland] [Linux Magazine Brasil] [Linux Magazine Spain] [Linux Technical Review]