2016-07-22 7 views
0

Um den zuletzt verwendeten Befehl auszuführen, können Sie entweder die Nach-oben-Taste auf Ihrer Tastatur drücken und Enter drücken oder !! eingeben und Enter drücken. Aber gibt es einen Befehl, mit dem Sie den Befehl ausführen können, der vor dem letzten ausgeführt wurde? Zum Beispiel:Ein Befehl zum Ausführen des Befehls, der direkt vor dem letzten ausgeführt wurde?

$ pwd 
/home/john 
$ ls 
bin  Documents Music Pictures Templates 
Desktop Downloads output Public Videos 

Typing in !! und Enter drücken, wird die ls Befehl erneut ausführen. Aber gibt es etwas, das dem Befehl !! ähnlich ist, mit dem Sie den Befehl pwd auf die gleiche Weise ausführen können? Wenn es einen gibt, geben Sie weitere Einzelheiten darüber, wie es funktioniert.

+0

Es gibt eine * Menge * mehr zur Geschichte Erweiterung als nur '!!'; Überprüfen Sie die Manpage für die vollständigen Details. – chepner

Antwort

3

Sie können !n verwenden, wobei n Zeilennummer in Ihrem Verlauf ist. Um den vorletzten Befehl zu erhalten, können Sie !-2 verwenden.

0

Sie können !-2 wie hier erwähnt verwenden. Zusammen mit dem Pfeil nach oben können Sie auch mit ctrl-p rückwärts durch Ihren Verlauf navigieren, mit ctrl-n weiterleiten. Sie können auch ctrl-r verwenden und die Suche nach einem Befehl wiederholen, den Sie bereits eingegeben haben.

+0

Denken Sie daran, dass die genauen Tastenbelegungen für die Navigation des Verlaufs von Person zu Person variieren können (wenn sie dies jedoch tun, weiß diese Person wahrscheinlich bereits, was sie tun), aber die Verlaufserweiterung wird durch die Shell festgelegt. – chepner

+0

Ja, das stimmt – nikkypx

0

Haben Erinnern Sie sich die Zeichen der zuletzt ausgeführten Befehle beginnen kann Sie führen Sie es, indem Sie die Anfangszeichen des Befehls angeben mit!

aus Ihrer Frage, ls erneut auszuführen, verwenden Sie die ! L, und ! P oder ! Pw PWD command.but auszuführen es ausführen nur die letzte ausgeführt.

Verwandte Themen