Что означают буквы в команде `fc`?

19

Я только что натолкнулся на fcкоманду, которая позволяет вам отредактировать предыдущую команду и выполнить ее позже.

Он имеет собственную FCEDITпеременную среды для настройки своего редактора и справочную страницу в Руководстве программиста POSIX ( 1p).

Он создает файл в /tmpкаталоге и выполняет содержимое, если файл сохранен ( :wqв vim).

Кроме того, он может нумеровать и перечислять fc -lранее выполненные команды на выбор.

Так что это действительно хорошая и удобная команда, чтобы знать.

Вопрос в том, что на самом деле означает его название; как связать команду с ее функцией в виду?

"Первый класс"? а может, даже просто как «функция» (что пришло мне в голову после написания предыдущего предложения)?

В руководстве это называется просто «утилита fc».


источник
2
Спасибо, что спросили это; Я долго задавался вопросом, какой механизм нажимает ^ X, ^ E для выполнения этой функции.
DopeGhoti
1
Смотрите также Экспорт истории команд в сценарий оболочки .
Стивен Китт
Есть много интересных расширений истории, которые вы можете сделать ... !!это предыдущая команда, !-2команда перед этим, !-3и !-Nт. Д. Затем !:1выдает первый аргумент из предыдущей команды, !:2второй аргумент, !*все аргументы, ^command1^command2execute последняя команда1 заменяет экземпляр
Чарльз Аддис
есть также подобная команда третьего уровня с прогнозирующими улучшениями.

Ответы:

20

Хотя на zshbuiltins(1)странице man это не указано, fcкоманда почти такая же, как и ее bashаналог. Просто (F) ix (C) ommand.

Мертвая хватка
источник
Поблагодарить. Это имеет смысл и звучит идеально. Я переключился на bashвыдачу help fc( helpбудучи утилитой для встроенных командных оболочек), но вывод тоже не заметил, и ни то, ни другое whatis fc.
2
Вы можете попробовать man bashили man builtins. Или просмотрите linux.die.net/man/1/bash .
Deathgrip
6
fcявляется командой POSIX, которая была создана в ksh AFAIK (уже существовала в ksh86, тогда уже называлась командой fix ). У zsh это было с первого выпуска в 1990 году. Я не знаю насчет bash. у bash 1.05 этого не было.
Стефан
Большой! Я должен был подтвердить, что: P