Ich habe den Befehl history eingegeben und er hat mir die letzten 10 von mir ausgeführten Befehle angezeigt. Jetzt wollte ich die letzten 20 Befehle sehen, die von mir ausgeführt wurden (nachdem ich die Dokumentation gelesen hatte):
Ein Argument von n listet nur die letzten n Zeilen auf.
Ich habe getippt history 20
. Dies zeigte mir alle Befehle von Befehl Nummer 20 bis zum aktuellen Befehl, der irgendwo um 2000 lag. Also habe ich es versucht
history -20
und das funktioniert. Es zeigt mir die letzten 20 Befehle. Dies ist jedoch nicht das, was in der Dokumentation gesagt wird.
Auch history -d [offset]
sollte den Befehl löschen , dass gegenüber . Auch das funktioniert in meinem zsh nicht.
Dies ist direkt aus meiner zsh-Shell:
zsh
command-history
user590849
quelle
quelle
man builtins
Befehl die Seite BASH BUILTIN COMMANDS an , unabhängig davon, welche Shell Sie verwenden. Versuchen Sieman zshbuiltins
oder die Webseite in meinem vorherigen Kommentar, um die richtige Dokumentation zu sehen.Antworten:
In zsh
history
ist ein Alias fürfc -l 1
. Wenn Sie dies tun, wirdhistory -20
es durch einen Alias ersetzt,fc -l 1 -20
der einfach nicht funktioniert. Verwenden Sie stattdessenfc
direkt:und es wird dir gut gehen.
quelle
run-help history
sagt dazu nichts. Wo haben Sie diese Dokumentation gefunden?history
~~fc -l
, warumfc -l 1
?bash
Dokumentation, nicht diezsh
Dokumentation.function lhistory() { fc -l -$1}
und verwenden Sie es, um die letzten (zum Beispiel) 10 Befehle anzuzeigen:lhistory 10
Das erste , was zu wissen, in
zsh
,history
was bedeutetfc -l
.Dann lesen Sie man zshbuiltins , Abschnitt über
fc
Befehl:Wie der Arzt sagte, ist eine negative Zahl ein Versatz zum aktuellen Verlauf. So
history -20
Liste Befehl von Strom auf 20 Befehl vor.Wenn Sie eine Nummer angeben
history 20
,zsh
denken Sie , dass esfirst to last
Form ist. In diesem Fallfirst
wird auf 20 gesetzt, aberlast
weggelassen. Alsolast
wird gesetzt,-1
weilfc -l
verwendet wird.quelle