Haben Sie jemals einen Befehl in Bash ausgeführt und eine Fehlermeldung wegen eines falsch geschriebenen Wortes erhalten? Oder haben Sie vielleicht die letzten drei Befehle vergessen, die Sie ausgeführt haben? Anstatt frühere Befehle neu zu schreiben oder sich daran zu erinnern, ist die Bash fc
Der Befehl kann dabei helfen, schnelle Änderungen vorzunehmen und frühere Befehle erneut auszuführen.
In diesem Artikel erfahren Sie, wie Sie fc
nutzen können um Befehle aus Ihrem Befehlsverlauf zu bearbeiten und erneut auszuführen. Nachdem Sie diese Anleitung gelesen haben, führen Sie fc
wie der Kommandozeilenkrieger, der du sein möchtest!
Voraussetzungen
Dieser Artikel wird ein Tutorial sein. Wenn Sie Schritt für Schritt vorgehen möchten, benötigen Sie einen Linux-Computer oder einen Windows 10-Computer mit aktiviertem Windows-Subsystem für Linux (WSL). Dieses Tutorial verwendet Ubuntu 20.04 LTS.
Über die Bash fc
Befehl
fc
ist keine Linux-Anwendung, sondern ein in Bash integriertes Shell-Dienstprogramm. Bash ist in den meisten großen Linux-Distributionen verfügbar. Mit wenigen Tastendrücken ist die Bash fc
Mit dem Befehl können Sie vorherige Befehle auflisten, bearbeiten oder ausführen.
Die
fc
Der Befehl ist auch in der Z-Shell (ZSH) verfügbar. Aber das Beispiel in diesem Artikel verwendetfc
in Bash.
Haben Sie einen langen Befehl ausgeführt, der sich als falsch herausgestellt hat? fc
erspart Ihnen die erneute Eingabe des gesamten Befehls. Stattdessen fc
können Sie den Befehl mit einem Texteditor Ihrer Wahl bearbeiten. Nach dem Speichern Ihrer Änderungen werden die bearbeiteten Befehle automatisch ausgeführt!
Bereit für fc
für eine Runde? Tauchen wir ein!
Vorherige Befehle auflisten
Haben Sie sich von Ihrem Computer entfernt, sind zurückgekommen und haben vergessen, welchen Befehl Sie zuletzt ausgeführt haben? Oder vielleicht können Sie sich nicht erinnern, ob Sie mehrere Befehle in der richtigen Reihenfolge ausgeführt haben. Wie geht's? Entspann dich, fc
wird Ihnen helfen, sich zu erinnern. So geht's.
1. Öffnen Sie ein Bash-Terminal auf Ihrem Computer.
2. Für fc
Um etwas zu nützen, muss es eine Art Befehlsgeschichte haben, mit der es arbeiten kann. Da Sie gerade ein neues Terminalfenster geöffnet haben, ist möglicherweise noch kein Befehlsverlauf vorhanden. Um einen Befehlsverlauf zum Testen aufzubauen, kopieren Sie jeden Befehl unten und führen Sie ihn in Ihrem Terminal aus. Diese Befehle sind nicht aufdringlich und Sie bringen Ihren Computer nicht in Gefahr.
# Clear the screen
clear
# print a string to the terminal session
echo 'working on the command line with fc'
# show some system information
uname -a
# use PS command to get process information
ps aux
3. Als nächstes listen Sie alle Befehle im Verlauf auf, indem Sie den folgenden Befehl ausführen. Die -l
Option weist fc
an um alle vorherigen Befehle nur aufzulisten und nicht auszuführen.
fc -l
Wie Sie unten sehen können, ist der fc
command hat alle vier Befehle angezeigt, die Sie zuvor ausgegeben haben. Die Zahlen auf der linken Seite geben die Reihenfolge an, in der Sie die einzelnen Befehle ausgeführt haben.
Bearbeiten und erneutes Ausführen des letzten Befehls
Stellen Sie sich eine Situation vor, in der Sie eine Anwendung installieren und einen Rechtschreibfehler gemacht haben. Daher schlägt der Befehl fehl. Anstatt den gesamten Befehl erneut einzugeben, warum nicht den Befehl bearbeiten und automatisch erneut ausführen? Befolgen Sie dazu diese Schritte.
1. Simulieren Sie die Installation einer nicht vorhandenen Anwendung, indem Sie den folgenden Befehl in Ihrem Terminal ausführen. Beachten Sie, dass Sie den Anwendungsnamen caffiene
absichtlich falsch schreiben .
sudo apt install caffiene -y
Daher schlägt die versuchte Installation fehl. Sie erhalten eine Nachricht ähnlich der untenstehenden.
2. Um den zuletzt ausgeführten Befehl zu korrigieren, führen Sie den folgenden Befehl im Terminal aus. Dadurch wird der Befehlsverlaufspuffer im Standard-Texteditor geöffnet. In diesem Beispiel ist der standardmäßige Texteditor nano.
fc
Der folgende Screenshot zeigt den letzten Befehl im Nano-Editor.
Wenn Nano nicht Ihr bevorzugter Texteditor ist, können Sie
fc
anweisen um einen anderen Editor zu verwenden, wie z. B. vi. Fügen Sie dazu den-e
ein Option gefolgt vom Namen des Texteditors. Beispiel:fc -e vi
öffnet den Befehlsverlauf im vi-Texteditor.
3. Sobald Sie sich im Nano-Texteditor befinden, korrigieren Sie die Schreibweise des Anwendungsnamens von caffiene
bis caffeine
.
4. Nachdem Sie den Anwendungsnamen korrigiert haben, drücken Sie CTRL+X
um Nano zu beenden.
5. An der nächsten Eingabeaufforderung werden Sie gefragt, ob Sie Modifizierten Puffer speichern? möchten , drücken Sie Y
—> Enter
um die Änderungen zu speichern.
Unmittelbar nach Verlassen des Texteditors fc
führt automatisch den von Ihnen bearbeiteten Befehl aus.
Bearbeiten und erneutes Ausführen eines vorherigen Befehls
Mit fc
können Sie nicht nur den zuletzt ausgeführten Befehl bearbeiten, sondern auch alle zuvor ausgeführten Befehle. Zum Beispiel, um den Befehl echo 'working on the command line with fc'
zu bearbeiten , folgen Sie diesen Schritten.
1. Listen Sie den vorherigen Befehl im Terminal auf, indem Sie den folgenden Befehl ausführen.
fc -l
2. Suchen Sie den Befehl, den Sie bearbeiten möchten, in der Befehlsverlaufsliste und notieren Sie sich die Nummer links davon. In diesem Beispiel ist die Befehlsnummer 2.
3. Um den Befehl mit der Eintragsnummer 2 zu bearbeiten, führen Sie den folgenden Befehl im Terminal aus. Der Befehl wird im Texteditor zur Bearbeitung geöffnet.
fc 2
4. Sobald Sie sich im Texteditor befinden, bearbeiten Sie nun den Befehl nach Bedarf.
5. Nachdem Sie den Befehl bearbeitet haben, drücken Sie CTRL+X
um Nano zu beenden.
6. An der nächsten Eingabeaufforderung werden Sie gefragt, ob Sie Modifizierten Puffer speichern? möchten , drücken Sie Y
—> Enter
um die Änderungen zu speichern.
Nachdem Sie den Befehl gespeichert und den Texteditor verlassen haben, wird der von Ihnen bearbeitete Befehl automatisch in der Shell ausgeführt.
Bearbeiten und erneutes Ausführen mehrerer Befehle
Wenn Sie denken, fc
nur einen vorherigen Befehl auf einmal bearbeiten und ausführen können, dann können Sie sich freuen. Wieso den? fc
ermöglicht es Ihnen, auch mehrere vorherige Befehle zu bearbeiten! Inwiefern ist es sinnvoll, mehrere vorherige Befehle zu bearbeiten? Zum einen können Sie die Reihenfolge der Befehlsausführung ändern.
Angenommen, Sie möchten die bisherigen Befehlsnummern 2 bis 7 bearbeiten. Gehen Sie dazu wie folgt vor.
1. Führen Sie den folgenden Befehl in Ihrem Bash-Terminal aus und drücken Sie Enter . Der folgende Befehl lautet:fc
, was bedeutet, dass fc
öffnet die Befehle 2 bis 7 zur Bearbeitung.
fc 2 7
2. Bearbeiten Sie als Nächstes die Befehle nach Bedarf. Für dieses Beispiel:
- Löschen Sie den
sudo apt install caffiene -y
Befehl. - Vertausche die Reihenfolge von
uname -a
undps aux
. - Löschen Sie
clear
.
3. Nachdem Sie die Befehle bearbeitet haben, drücken Sie CTRL+X
um Nano zu beenden.
4. An der nächsten Eingabeaufforderung werden Sie gefragt, ob Sie Modifizierten Puffer speichern? möchten , drücken Sie Y
—> Enter
um die Änderungen zu speichern.
Die von Ihnen bearbeiteten Befehle werden nach dem Verlassen des Texteditors automatisch ausgeführt.
Erneutes Ausführen eines vorherigen Befehls ohne Bearbeitung
Angenommen, Sie müssen nur einen vorherigen Befehl ausführen, ohne ihn zuerst zu bearbeiten. fc
hat dafür eine Option. Führen Sie die folgenden Schritte aus, um einen vorherigen Befehl von einem bestimmten Eintrag im Verlauf auszuführen.
- Listen Sie den vorherigen Befehl im Terminal auf, indem Sie den folgenden Befehl ausführen.
fc -l
2. Suchen Sie in der Befehlsverlaufsliste den Befehl, den Sie erneut ausführen möchten, und notieren Sie sich die Nummer links davon. In diesem Beispiel ist die Befehlsnummer 2.
3. Um den spezifischen vorherigen Befehl auszuführen, führen Sie den folgenden Befehl in der Shell aus. Der -s
Option weist fc
an um die Bearbeitung zu überspringen und mit der Ausführung von Befehl Nummer 2 fortzufahren.
fc -s 2
Der folgende Screenshot zeigt den von fc ausgeführten Befehl Nummer 2 aus der Befehlshistorie.
Fazit
Dieser Artikel soll Ihr Interesse an einem nützlichen, aber oft übersehenen und vergessenen Befehl namens fc
wecken . Sie haben gelernt, wie man fc
verwendet um zu vermeiden, zuvor ausgeführte Befehle erneut einzugeben, was Zeitverschwendung sein kann.
Mit dem Wissen, das Sie jetzt über fc
haben , ist es etwas, von dem du denkst, dass du es verwenden würdest? Oder bevorzugen Sie immer noch die erneute Eingabe von Befehlen in der Shell? Treffen Sie eine weise Wahl!