Linux-Befehlszeilen- und Bash-Shell-Verknüpfungen
Einleitung
Obwohl Sie vielleicht denken, dass Sie gelernt haben, die Linux-Befehlszeile mit der Bash-Shell zu beherrschen, gibt es immer einige neue Tricks, die Sie lernen können, um Ihre Befehlszeilenfähigkeiten effizienter zu gestalten. In diesem Artikel lernen Sie einige weitere grundlegende Tricks, wie Sie Ihr Leben mit der Linux-Befehlszeile und -Bash erträglicher und sogar angenehmer gestalten können.
Erweiterung der Bash-Befehlshistorie
In diesem Abschnitt geht es hauptsächlich um Bash-Verknüpfungen in Kombination mit den drei Bash-History-Erweiterungszeichen "!", "^" und "#". Das Bash-Befehlszeichen "!" für die Verlaufserweiterung zeigt den Beginn der Verlaufserweiterung an. Das "^" ist ein Ersetzungszeichen, um einen zuvor ausgeführten Befehl zu ändern. Das letzte optionale Zeichen ist "#", das die Erinnerung an die Zeile als Kommentar kennzeichnet.
Letzten Befehl wiederholen
echo Bash Shortcuts
Bash Shortcuts
!!
echo Bash Shortcuts
Bash Shortcuts!! ist wahrscheinlich die einfachste und beliebteste Bash-Verknüpfung, die einfach Ihren zuletzt eingegebenen Befehl anzeigt und ausführt.
Letzten Befehl wiederholen
echo Bash Shortcuts
Bash Shortcuts
wc -m /etc/bash_completion
45 /etc/bash_completion
!echo
echo Bash Shortcuts
Bash ShortcutsDie Eingabe des Zeichens "!" gefolgt von einem Schlüsselwort weist die Shell an, nach dem neuesten Befehl zu suchen, der mit dem Schlüsselwort beginnt. Eine geringfügige Änderung des vorherigen Befehls kann vorgenommen werden, um nur den letzten Befehl zu drucken, ihn aber nicht auszuführen. Dies kann sehr praktisch sein, wenn Sie sich nicht sicher sind, was Ihr letzter Befehl war, und ihn nicht ausführen möchten, bevor Sie seine Bedeutung bestätigen können. Fügen Sie dazu einfach :p am Ende Ihres Befehls hinzu, gefolgt von !! Wenn Sie bereit sind, es auszuführen:
echo Bash Shortcuts
Bash Shortcuts
wc -m /etc/bash_completion
45 /etc/bash_completion
!echo:p
echo Bash Shortcuts
!!
echo Bash Shortcuts
Bash ShortcutsAlle Argumente des letzten Befehls
echo Bash Shortcuts
Bash Shortcuts
touch !*
touch Bash Shortcuts
ls
Bash ShortcutsDie Tastenkombination !* wird auf alle Argumente erweitert, die vom letzten Befehl verwendet wurden. In unserem obigen Beispiel haben wir alle vorherigen Argumente verwendet, die vom Befehl echo verwendet werden, um Dateien mit dem Touch-Befehl mit denselben Argumenten zu erstellen.
Erstes Argument des letzten Befehls
echo Bash Shortcuts
Bash Shortcuts
touch !^
touch Bash
ls
Bash
Ähnlich wie im vorherigen Beispiel haben wir in diesem Beispiel die Bash-Tastenkombination !^ verwendet, um nur das erste Argument des letzten Befehls wiederzuverwenden.
Letztes Argument des letzten Befehls
echo Bash Shortcuts
Bash Shortcuts
touch !$
touch Shortcuts
ls
ShortcutsDasselbe wie im vorherigen Beispiel können wir auch für das letzte Argument wiederverwenden, das für den zuvor ausgeführten Befehl angegeben wurde.
Schnelle Befehlsersetzung
Im folgenden Beispiel führen wir den vorherigen Befehl erneut aus, ersetzen jedoch das Wort "linux" durch "bash".
echo linux command line linux command line
linux command line linux command line
^linux^bash^
echo bash command line linux command line
bash command line linux command lineIm obigen Beispiel wurde das erste Vorkommen des ersten Vorkommens des Schlüsselworts Linux durch bash ersetzt. Dies entspricht zu:
!!:s/linux/bash/n-ten Befehl aus der Historie ausführen
Standardmäßig speichert die Bash-Shell alle Befehle, die Sie zuvor ausgeführt haben, als Verlauf. Jeder Befehl in Ihrem Bash-Verlauf hat seine entsprechende Nummer. Im folgenden Beispiel wird der 189. Befehl in Ihrem Bash-Befehlsverlauf ausgeführt.
!189Ähnlich wie in den vorherigen Beispielen können Sie den Befehl nicht direkt ausführen, sondern ihn zuerst mit :p ausgeben.
$ !189:p Hinweis: Um die letzten 5 Befehle in Ihrem Bash-Befehlsverlauf anzuzeigen, führen Sie Folgendes aus: $history 5
Um den letzten 4. Befehl aus Ihrer Bash-Historie auszuführen, verwenden Sie decrement -4:
!-4Gesamte Befehlszeile wiederholen
echo bash command line !#
echo bash command line echo bash command line
bash command line echo bash command line Das !# bewirkt, dass bash bei der Ausführung des Befehls alles wiederholt, was Sie in der gesamten Befehlszeile eingegeben haben. Sie können dieses Verhalten einschränken, indem Sie nur bestimmte Schlüsselwörter mit dem Schlüsselwort :nth ausgeben. Wenn Sie z. B. nur das zweite Keyword erneut drucken möchten, können Sie Folgendes verwenden:
echo bash command line !#:2
echo bash command line command
bash command line commandTastenkombinationen zum Bearbeiten Ihrer Bash-Befehlszeile
Liste der grundlegenden Tastenkombinationen für die Bearbeitung der Bash-Befehlszeile
| STRG + f | Gehen Sie ein Wort nach vorne |
| STRG + b | Um ein Wort rückwärts gehen |
| ALT + c | Aktuelles Zeichen am Cursor groß schreiben und an das Ende des Wortes verschieben |
| ALT + u | Machen Sie alle Zeichen groß, beginnend von der aktuellen Cursorposition bis zum Ende des Wortes |
| ALT + l | Machen Sie alle Zeichen klein, beginnend von der aktuellen Cursorposition bis zum Ende des Wortes |
| ALT + d | Löscht alle Zeichen beginnend von der aktuellen Cursorposition bis zum Ende des Wortes |
| ALT + f | Bewegen Sie sich Wort für Wort vorwärts |
| ALT + t | Aktuelles Wort mit vorherigem austauschen |
| STRG + t | Aktuellen Charakter mit vorherigem vertauschen |
| STRG + k | Alle von der aktuellen Cursorposition bis zum Ende der Befehlszeile löschen |
| STRG + y | Fügen Sie Text oder Zeichen ein, die zuvor mit Löschtastenkombinationen gelöscht wurden |
Schlussfolgerung
Das Ziel dieses Artikels war es, einige grundlegende Bash-Tastenkombinationen vorzustellen, die auf einer Linux-Befehlszeile verwendet werden. Für weitere Lektüre greifen Sie auf die Handbuchseite von Bash und Geschichte zu:
man bashman history