Wofür stehen die Buchstaben im Befehl "fc"?

19

Ich bin gerade auf den fcBefehl gestoßen, mit dem Sie den vorherigen Befehl bearbeiten und anschließend ausführen können.

Es hat eine eigene FCEDITUmgebungsvariable zum Einstellen seines Editors und eine Manpage im POSIX Programmer's Manual ( 1p).

Es erstellt eine Datei im /tmpVerzeichnis und führt den Inhalt aus, wenn die Datei gespeichert ist ( :wqin vim).

Außerdem kann es fc -lzuvor ausgeführte Befehle nummerieren und auflisten.

Es ist also sehr schön und praktisch, es zu wissen.

Die Frage ist, was der Name wirklich bedeutet. Wie wird der Befehl mit seiner Funktion in Verbindung gebracht?

"Erste Klasse"? oder vielleicht auch nur als "Funktion" (was ist mir nach dem Verfassen des vorherigen Satzes eingefallen)?

Das Handbuch nennt es einfach "das fc-Dienstprogramm".


quelle
2
Danke, dass Sie das gefragt haben. Ich habe mich lange gefragt, welchen Mechanismus das Drücken von ^ X, ^ E verwendet hat, um diese Funktion auszuführen.
DopeGhoti
Theres viele coole Geschichte Erweiterungen, die Sie auch tun können ... !!ist der vorherige Befehl, !-2ist der Befehl davor, !-3um !-Nusw. Dann !:1gibt Ihnen das erste Argument aus dem vorherigen Befehl !:2, das zweite Argument, !*alle Argumente, ^command1^command2ausführen Letzter Befehl1 ersetzt Instanz von Befehl1 durch Befehl2 usw.
Charles Addis
Es gibt auch einen ähnlichen Third-Pary-Befehl mit Verbesserungen der Vorhersage.

Antworten:

20

Obwohl die zshbuiltins(1)Manpage nicht darauf hinweist, ist der fcBefehl fast derselbe wie sein bashGegenstück. Einfach (F) ix (C) ommand.

Todesgriff
quelle
Danken. Es macht Sinn und klingt perfekt. Ich habe auf bashIssuing umgestellt help fc( helpein Dienstprogramm für Shell-Built-Ins), aber die Ausgabe merkt das auch nicht und auch nicht whatis fc.
2
Du könntest es versuchen man bashoder man builtins. Oder schauen Sie sich linux.die.net/man/1/bash an .
Deathgrip
6
fcist ein POSIX-Befehl, der aus ksh AFAIK stammt (bereits in ksh86 vorhanden, damals schon fix-Befehl genannt ). zsh hat es seit der ersten Veröffentlichung im Jahr 1990. Ich weiß nichts über Bash. Bash 1.05 hatte es nicht.
Stéphane Chazelas
Groß! Ich musste das bestätigen: P