GNU/Linux - Hilfe in der BASH-Shell
- Eine GNU/Linux Installation, bzw. eine Linux Kommandozeile wie z.B. die GNU Bash.
- Um eine sichere Systemumgebung zu gewährleisten, bin ich als regulärer Benutzer mit
sudo
Berechtigung angemeldet.
Folgende Festlegung gelten:
Zeilenanfang | Bedeutung |
---|---|
# |
Wenn ein Kommando mit einem # beginnt, muss der folgende Linux-Befehl mit Root-Rechten, entweder direkt als Root-Benutzer oder mit dem Befehl sudo ausgeführt werden. |
$ |
Bedeutet, dass der angegebene Linux-Befehle als regulärer, nicht privilegierter Benutzer ausgeführt werden kann. |
Als Betriebssystem nutze ich in der Regel Fedora Workstation. Die gezeigten Befehle sollten aber unter allen gängigen, modernen Distribuionen mit der GNU Bash Shell funktionieren.
Hilfe zur Selbsthilfe
In der Bash-Shell stehen dir verschiedene Befehle zur Verfügung, um weitere Hilfe und Unterstützung zu erhalten. Hier sind einige der gängigsten Befehle, die du verwenden kannst:
help
: Gibt eine Liste der eingebauten Befehle in der Bash-Shell und deren Verwendung aus.man
: Zeigt eine Handbuchseite für ein bestimmtes Kommando oder eine Bibliothek an.info
: Zeigt die Dokumentation für ein bestimmtes Kommando oder eine Bibliothek im “info”-Format an.apropos
oderwhatis
: Gibt eine Liste von Befehlen aus, die zu einem bestimmten Stichwort passen.type
: Zeigt an, ob ein bestimmtes Kommando ein eingebauter Befehl oder eine externe Binärdatei ist.
Help
Wenn man das eigentliche Kommando schon kennt, aber sich nicht sicher ist, wie genau es zu verwenden ist,
dann liefert in der Regel der Schalter -- help
einen ersten Ansatz.
In der ersten Zeile der Ausgabe von --help
steht in der Regel, wie der Aufruf des Befehls aufgebaut ist.
Hier ein Beispiel am Befehl ls
.
|
|
Der Befehl ls
erwartet zuerst die Optionen und dann eine Datei. Da die beiden Angaben allerdings in
eckigen Klammern [ ]
stehen, bedeutet das, dass sie optional sind. Das Kommando ls
also auch ohne
weitere Angaben funktioniert.
Für den Fall, dass die Ausgabe zu lang für den Bildschirm ist oder im Terminal nicht gescrollt werden kann,
dann kann die Ausgabe an den Befehl less
weitergeleitet werden. So wird das Ergebnis seitenweise
angezeigt und mit den Hoch / Runter Tasten kann man im Text, ohne die Maus, scrollen.
|
|
Der senkrechte Balken |
wird Pipe genannt und mit einem deutschen Tastaturlayout mit der
Tastenkombination AltGr
und der größer / kleiner als Taste, rechts neben der Shift
Taste, erzeugt.
Mit der Taste q
kann die Anzeige beendet werden und man befindet sich wieder in seiner Shell.
Das Handbuch
Fast alle Befehle und Programme bringen ein Handbuch mit. Der Aufruf ist man
plus das Kommando oder
Programm zu dem man Informationen bekommen möchte. Zum Beispiel so:
|
|
Der Befehl man
bringt direkt die Möglichkeit seitenweise zu scrollen und mit q
das Programm zu beenden
mit.
Alle Handbücher durchsuchen
Es besteht auch die Möglichkeit alle Handbücher auf dem System nach einem Begriff zu durchsuchen.
Eigentlich handelt es sich hierbei auch um den Befehl man
mit dem Schalter -k
, aber es kann auch direkt
der Befehl apropos
genutzt werden. Hier zwei Beispiele mit dem gleichen Ergebnis.
|
|
oder
|
|
Was ist?
Der Befehl whatis
zeigt eine einzeilige Zusammenfassung eines Befehls an, welche aus der Manpage (dem
handbuch) des Befehls stammt. Es ist eine schnelle Möglichkeit zu sehen, was ein Befehl tatsächlich tut.
Suchen und finden
Dateisuche mit Hilfe einer Datenbank
Der Befehl locate
bietet eine Suchfunktion, welche datenbankgestützt ist. Das heißt, dass ein Index
erstellt worden ist. Die meisten Distributionen aktualisieren die Datenbank einmal täglich. Also können nur
Dateien gefunden werden, welche zum Zeitpunkt der Indexierung vorhanden waren.
Ein Vorteil von locate
ist, dass ich keinen Pfad für die Suche angeben muss und die Suche sehr, sehr
schnell ist. Mit dem Befehl updatedb
kann man die Indexierung auch manuell anstoßen.
Dateien finden ohne Datenbank
|
|
Also erst der Befehl find
, dann der Pfad ab dem die Suche beginnt. Mit -type f
wird die Suche auf
Dateien (Files) eingeschränkt und mit dem Schalter -iname
wird der zu suchende Begriff angegeben und zwar
ohne die Groß- und Kleinschreibung zu beachten. Wichtig ist hierbei, dass find
genau nachdem angegebenen
String sucht. Wer nach „Butter“ sucht, findet nicht „Butterbrot“. Dafür kann man den Suchbegriff mit Hilfe
von *
erweitern.
Wenn zum Beispiel ab dem Ordner /
gesucht werden soll, braucht es Root-Berechtigungen oder man bekommt,
auf Grund der fehlenden Berechtigungnen, viele Fehlermeldungen.
Text in Dateien finden
Um Text innerhalb von Dateien zu finden, gibt es den Befehl grep
.
|
|
Die Schalter in dem Beispiel stehen für folgende Optionen:
r
für rekursivn
zeigt die Zeile der Datei an, wo der Text gefunden wurdew
bedeutet, dass der Suchbegriff als Ganzes übereinstimmen muss- Wer nach „Butter“ mit dem Schalter
w
sucht, findet nicht „Butterbrot“
- Wer nach „Butter“ mit dem Schalter
i
Es wird nicht zwischen Groß- und Kleinschreibung unterschiedenl
kann optional ergänzt werden, um nur den Dateipfad auzugeben, in welcher der Textschnipsel vorkommt
Wo befindet sich ein Befehl / Programm
Der Befehl whereis
listet auf, wo im Dateisystem ein Befehl oder Programm “liegt”. Das heißt zum einen,
in welchem Pfad die ausführbare Datei, die Konfigurationsdateien, eventuell mit anderen Programmen geteilte
Dateien und auch das Manual des Befehls oder Programms liegen.
Zum besseren Verständnis, ein Beispiel:
|
|
/usr/bin/
die Binärdatei/etc/
die Konfiguration/usr/share/man/
das Handbuch