Aus Linux-Magazin 07/2020

Magische Abkürzungen ersparen mühselige Tipperei

© Robyn Mackenzie, 123RF

Elegante Tricks und Abkürzungen für die Kommandozeile waren an dieser Stelle schon einmal das Thema. Aber die Vorräte an professionellen Kniffen sind noch lange nicht erschöpft.

Passwörter sind entweder stark und dann schwer zu merken oder gut zu erinnern, aber auch leicht zu erraten. Ein Ausweg aus diesem Dilemma bieten Passwortmanager. Sie benötigen nur noch ein starkes Master-Passwort und merken sich dafür Dutzende weiterer Kennworte. Allerdings sind das zumeist Anwendungen mit einer grafischen Oberfläche, die man auf vielen Servern nicht zur Hand hat.

Hier hilft ein kleiner, aber sicherer Eigenbau-Passwortmanager für die Kommandozeile aus der Patsche, für den man nur das Paket ccrypt nachinstallieren muss. Es implementiert den starken Verschlüsselungsalgorithmus Rijndael Block Cipher, den auch der Advanced Encryption Standard (AES) benutzt. Dann legt man eine Datei »passwords« an, die dem Schema HostDienstUsernamePasswortBemerkung folgt (Listing 1).

Listing 1

Passwortdatei

MeinServer   SSH   admin   kdhJFdU773n!m§   Mailserver
[...]

Diese Datei verschlüsselt man mit dem Kommando »ccrypt -e passwords«. Das Master-Passwort muss man hier zur Sicherheit doppelt eingeben. Anschließend kann man in dieser Datei nach dem richtigen Passwort suchen, ohne sie komplett zu entschlüsseln:

$ ccat passwords | grep Mailserver

Mit dem Kommando »ccrypt -d passwords« muss man die Passwortdatei anschließend nur noch komplett entschlüsseln, um sie zu ändern. Nach dem Editieren darf man nicht vergessen, sie wieder zu verschlüsseln.

Tastenkürzel

Die Shell kennt eine Reihe von Tastenkürzeln, die viel Tipparbeit ersparen können. Hat man beispielsweise bei einem längeren Kommando vergessen, ein »sudo« voranzustellen, ist der kürzeste Weg zur Korrektur »sudo !!«. Das doppelte Ausrufezeichen wiederholt das letzte Kommando. Nicht ganz so schnell, aber immer noch effektiv klappt es mit folgender Tastenfolge:

  • [Pfeil-oben] (letztes Kommando aus der History)
  • [Strg]+[E] (ans Zeilenende springen)
  • [Strg]+[U] (bis Zeilenanfang löschen)
  • »sudo«
  • [Strg]+[Y] (gelöschte Zeile einsetzen)

Wiederholen lässt sich übrigens nicht nur das letzte Kommando, sondern auch nur dessen Argumente. Das ist beispielsweise nützlich, wenn man nach einem »ping« mit »traceroute« oder »mtr« fortfahren will. Dazu wiederholt man mit [Alt]+[.] das Argument des letzten erfolgreichen Kommandos.

Löschen mit Ausnahme

Das Ausrufezeichen dient in der Shell nicht nur der Suche in der History, es kann auch – wie in etlichen Programmiersprachen – für die Negation eines Ausdrucks stehen. Will man beispielsweise in einem Verzeichnis alle Dateien außer den Text- und Logfiles löschen, klappt das so:

$ rm !(*.txt|*.log)

Den Ausdruck für die beim Löschen auszulassenden Dateien könnte man beliebig komplex gestalten, editiert ihn dann aber eventuell besser in einem Texteditor. Die Lösung dazu heißt [Strg]+[X][E] – das lädt die aktuelle Kommandozeile in den Editor, auf den die Environment-Variable »$EDITOR« verweist. Verlässt man den Editor anschließend – im Fall von Vi etwa per [Umschalt]+[.][Q]+[W] –, dann landet der Text wieder auf der Kommandozeile und lässt sich dort erneut ausführen.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 1 HeftseitePreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben