Inhalt

Vorwort

Teil IKernkonzepte

1Befehle kombinieren

Eingabe, Ausgabe und Pipes

Sechs Befehle für den Einstieg

Befehl #1: wc

Befehl #2: head

Befehl #3: cut

Befehl #4: grep

Befehl #5: sort

Befehl #6: uniq

Dateiduplikate entdecken

Zusammenfassung

2Einführung in die Shell

Das Shell-Vokabular

Pattern Matching für Dateinamen

Variablen auswerten

Woher die Variablen kommen

Variablen und Aberglauben

Muster versus Variablen

Befehle mit Aliasen abkürzen

Eingaben und Ausgaben umleiten

Die Auswertung mit Anführungs- und Escape-Zeichen deaktivieren

Auszuführende Programme auffinden

Umgebungen und Initialisierungsdateien, die Kurzfassung

Zusammenfassung

3Befehle erneut ausführen

Die Befehls-History anschauen

Befehle aus der History erneut aufrufen

Mit dem Cursor durch die History gehen

History-Erweiterung

Nie wieder die falsche Datei löschen (dank der History-Erweiterung)

Inkrementelles Durchsuchen der Befehls-History

Kommandozeilen-Editing

Cursor-Methode innerhalb eines Befehls

History-Erweiterung mit Carets

Kommandozeilen-Editing im Emacs- oder Vim-Stil

Zusammenfassung

4Ein Ausflug in das Dateisystem

Bestimmte Verzeichnisse effizient aufsuchen

Springen Sie in Ihr Home-Verzeichnis

Schneller bewegen mit Tab-Ergänzung

Mit Aliasen oder Variablen in oft besuchte Verzeichnisse springen

Machen Sie ein großes Dateisystem gefühlt kleiner mit CDPATH

Organisieren Sie Ihr Home-Verzeichnis für eine schnelle Navigation

Effizient zu Verzeichnissen zurückkehren

Mit »cd -« zwischen zwei Verzeichnissen umschalten

Mit pushd und popd zwischen vielen Verzeichnissen wechseln

Zusammenfassung

Teil IIErweiterte Fähigkeiten

5Das Arsenal erweitern

Text erzeugen

Der Befehl date

Der seq-Befehl

Klammererweiterung (eine Shell-Eigenschaft)

Der find-Befehl

Der yes-Befehl

Text isolieren

grep: Ein tieferer Einblick

Der tail-Befehl

Der Befehl awk {print}

Text kombinieren

Der tac-Befehl

Der paste-Befehl

Der diff-Befehl

Text transformieren

Der tr-Befehl

Der rev-Befehl

Die Befehle awk und sed

Weiter zu einem noch größeren Werkzeugkasten

Zusammenfassung

6Eltern, Kinder und Umgebungen

Shells sind ausführbare Dateien

Eltern- und Kindprozesse

Umgebungsvariablen

Umgebungsvariablen erzeugen

Achtung Aberglaube: »Globale« Variablen

Kind-Shells versus Subshells

Ihre Umgebung konfigurieren

Eine Konfigurationsdatei erneut lesen

Mit Ihrer Umgebung verreisen

Zusammenfassung

7Elf weitere Möglichkeiten, einen Befehl auszuführen

Listentechniken

Technik #1: Bedingte Listen

Technik #2: Bedingungslose Listen

Substitutionstechniken

Technik #3: Befehlssubstitution

Technik #4: Prozesssubstitution

Befehl-als-String-Techniken

Technik #5: Übergeben eines Befehls als Argument an die bash

Technik #6: Einen Befehl mit einer Pipeline an bash leiten

Technik #7: Entferntes Ausführen eines Strings mit ssh

Technik #8: Ausführen einer Liste von Befehlen mit xargs

Prozesskontrolltechniken

Technik #9: Einen Befehl in den Hintergrund schieben

Technik #10: Explizite Subshells

Technik #11: Prozessersetzung

Zusammenfassung

8Einen frechen Einzeiler schreiben

Machen Sie sich bereit, frech zu sein

Seien Sie flexibel

Denken Sie darüber nach, wo Sie anfangen sollten

Lernen Sie Ihre Testwerkzeuge kennen

Einen Dateinamen in eine Sequenz einfügen

Zusammengehörende Dateipaare prüfen

Ein CDPATH aus Ihrem Home-Verzeichnis generieren

Testdateien generieren

Leere Dateien generieren

Zusammenfassung

9Textdateien wirksam einsetzen

Ein erstes Beispiel: Dateien finden

Das Ablaufdatum von Domains prüfen

Eine Vorwahldatenbank bauen

Einen Passwortmanager bauen

Zusammenfassung

Teil IIIZusätzliche Goodies

10Effizient an der Tastatur

Mit Fenstern arbeiten

Instant-Shells und Browser

Einmalfenster

Browser-Tastenkürzel

Fenster und Desktops wechseln

Webzugriff von der Kommandozeile

Browserfenster von der Kommandozeile aus starten

HTML mit curl und wget beziehen

HTML mit HTML-XML-utils verarbeiten

Gerenderten Webinhalt mit einem textbasierten Browser abrufen

Die Zwischenablage von der Kommandozeile aus steuern

Auswahlen mit Standardeingabe und Standardausgabe verbinden

Den Passwortmanager verbessern

Zusammenfassung

11Letzte Zeitsparer

Schnelle Gewinne

Aus less in Ihren Editor springen

Dateien bearbeiten, die einen bestimmten String enthalten

Der Umgang mit Tippfehlern

Schnell leere Dateien erzeugen

Zeilenweise Verarbeitung einer Datei

Befehle identifizieren, die Rekursion unterstützen

Eine Manpage lesen

Eine längere Lernphase

Die bash-Manpage lesen

Lernen Sie cron, crontab und at

rsync lernen

Eine andere Skriptsprache lernen

make für »Nichtprogrammieraufgaben« nutzen

Versionskontrolle für alltägliche Dateien

Leben Sie wohl

Anhang AIhr Linux-Wissen aufgefrischt

Anhang BFalls Sie eine andere Shell einsetzen

Index