Shellkniffe
Aus DebianforumWiki
| |
Review: Dieser Artikel ist für das Review freigegeben.
|
In diesem Artikel werden verschiedene Kniffe rund um die Shell erläutert. Auch alltägliche Befehle, für die noch kein eigener Artikel besteht bzw. sich aufgrund des Umfangs sich nicht lohnen würde, finden hier Platz. Es wird nicht immer der beste Weg beschrieben, sondern einer der einfach ist und funktioniert.
| |
Hinweis: Dieser Artikel ist besonders einfach gehalten, um Neulinge nicht zu überfordern. Wer hier detaillierte Informationen zu den einzelnen Befehlen sucht, wird diese hier nicht finden. |
Inhaltsverzeichnis |
Autovervollständigung aktivieren
Leider ist die Autovervollständigung standardmäßig nicht aktiviert. Um sich eine Menge Schreibarbeit zu ersparen, muss die /etc/bash.bashrc mit einem Editor als root editiert werden.
Unter dem Bereich enable bash completion kann durch löschen der Auskommentierungen (#) die Autovervollständigung aktiviert werden. Insgesamt sind 3 Auskommentierungen zu entfernen. Der Bereich in der /etc/bash.bashrc sieht dann folgendermaßen aus:
#enable bash completion in interactive shells if [ -f /etc/bash-completion ] && ! shopt -oq posix; then . /etc/bash_completion fi
Sobald die Datei abgespeichert wurde, ist die Autovervollständigung aktiv. Innerhalb der Konsole kann man durch das betätigen der Tab-Taste von ihr profitieren.
Verzeichnis- und Dateigröße ermitteln
Aus verschiedenen Gründen ist es manchmal notwendig, die Größe eines Verzeichnisses oder einer einzelnen Datei zu kennen. Mit dem du -sh Befehl und der entsprechenden Pfadangabe (hier im Beispiel der Pfad zum Mailordner) kann man diese schnell ermitteln.
Ein Verzeichnis erstellen
Verzeichnisse helfen dem Nutzer die Übersicht über seine Dateien nicht zu verlieren. Mit dem Befehl mkdir lassen sich neue Verzeichnisse (hier am Beispiel vom neuen Musik-Verzeichnis) erstellen.
Der obige Befehl führt dazu das im aktuellen Verzeichnis, ein Verzeichnis mit dem Namen Musik erstellt wird. Durch die Angabe des kompletten Pfades (Beispielsweise /home/Nutzer5/Musik) erzeugt man Verzeichnisse außerhalb des aktuellen.
Eine Datei umbennen oder verschieben
Das Verschieben oder Umbenennen einer Datei kann von dem kleinen Befehl mv übernommen werden. Das Umbenennen geschieht durch benennen der Datei und des gewünschten Zielnamens (hier wird im Beispiel die Datei Lohnzettel in Datei LohnzettelB umbenannt).
Das Verschieben einer Datei erfolgt nach einem ähnlichem Schema. Zuerst wird die Datei benannt und dann das Zielverzeichnis angegeben (hier werden im Beispiel zwei Lohnzetteldatein in das Unterverzeichnis Bürokram verschoben).
Die Unterscheidung der Feinheiten ist hier sehr wichtig. So wird nämlich das Verschieben ins Zielverzeichnis mit einem / geschlossen.
Einen Prozess beenden
Das Beenden eines Prozesses ist ein ganz normaler Vorgang, der ab und an sich etwas schwierig gestalten kann. Ein Fenster friert ein oder es gibt gleich keine grafische Möglichkeit ein Programm zu beenden (Dockapps oder eine Anwendung die im Hintergrund läuft). Ist der Befehl gerade in der Konsole ausgeführt wurden und noch aktiv (das heißt es ist noch kein neuer Prompt erschienen), dann kann dieser Befehl durch die Tastenkombination strg+c abgebrochen werden. Für alles andere gibt es den Befehl killall, welcher den gewünschten Prozess beendet (hier am Beispiel von Icedove).
Wenn die Autovervollständigung aktiviert ist, wird durch das zweimalige betätigen der Tab-Taste, nach dem Befehl killall eine Liste der laufende Prozesse angezeigt.
Verbreitete Tastenkombinationen
[1] Gilt in der /bin/sh, readline-Umgebungen wie cat und ähnlichen einfachen Eingabemasken.
[2] Gilt auf vielen höheren Shells.
[3] Gilt nur im vi(m), less (und damit normalerweise auch in Manpages) und ähnlichen Programmen.
| 1 | 2 | 3 | Strg | Alt | Taste | Funktion/Wirkung | Ersatz für Befehl |
|---|---|---|---|---|---|---|---|
| x | Strg + | d | end of file; Shell beenden |
exit
| |||
| x | Strg + | c | SIGINT senden, (häufig:) Prozess abbrechen |
kill -2 {PID}
| |||
| x | Strg + | h | Buchstaben löschen | ||||
| x | Strg + | w | Wort löschen | ||||
| x | Strg + | u | bis zum Zeilenanfang löschen (praktisch: Passwortfeld nach vertippen leeren) | ||||
| x | Strg + | k | bis zum Zeilenende löschen | ||||
| x | Strg + | s | Terminal-Output anhalten | ||||
| x | Strg + | q | Terminal-Output fortsetzen | ||||
| x | Strg + | z | Prozess anhalten (z.B., um ihn per bg in den Hintergrund zu setzen) |
||||
| x | Strg + | v | nachfolgendes Zeichen escapen (z.B. wird ^D zu 0x04 anstatt EOF) |
||||
| x | Strg + | a | zum Zeilenanfang gehen | ||||
| x | Strg + | e | zum Zeilenende gehen | ||||
| x | Strg + | l | Bildschirm leeren | clear
| |||
| x | Alt + | b | Cursor ein Wort zurück bewegen | ||||
| x | Alt + | f | Cursor ein Wort nach vorne bewegen | ||||
| x | Strg + | u | halbe Seite nach oben scrollen | ||||
| x | Strg + | d | halbe Seite nach unten scrollen | ||||
| x | Strg + | f | volle Seite nach unten scrollen | ||||
| Strg + | Alt + | F1,F2... | auf das entsprechende TTY wechseln | chvt {1,2,3..}
| |||
| Dummy |