Я только что натолкнулся на fc
команду, которая позволяет вам отредактировать предыдущую команду и выполнить ее позже.
Он имеет собственную FCEDIT
переменную среды для настройки своего редактора и справочную страницу в Руководстве программиста POSIX ( 1p
).
Он создает файл в /tmp
каталоге и выполняет содержимое, если файл сохранен ( :wq
в vim
).
Кроме того, он может нумеровать и перечислять fc -l
ранее выполненные команды на выбор.
Так что это действительно хорошая и удобная команда, чтобы знать.
Вопрос в том, что на самом деле означает его название; как связать команду с ее функцией в виду?
"Первый класс"? а может, даже просто как «функция» (что пришло мне в голову после написания предыдущего предложения)?
В руководстве это называется просто «утилита fc».
!!
это предыдущая команда,!-2
команда перед этим,!-3
и!-N
т. Д. Затем!:1
выдает первый аргумент из предыдущей команды,!:2
второй аргумент,!*
все аргументы,^command1^command2
execute последняя команда1 заменяет экземплярОтветы:
Хотя на
zshbuiltins(1)
странице man это не указано,fc
команда почти такая же, как и ееbash
аналог. Просто (F) ix (C) ommand.источник
bash
выдачуhelp fc
(help
будучи утилитой для встроенных командных оболочек), но вывод тоже не заметил, и ни то, ни другоеwhatis fc
.man bash
илиman builtins
. Или просмотрите linux.die.net/man/1/bash .fc
является командой POSIX, которая была создана в ksh AFAIK (уже существовала в ksh86, тогда уже называлась командой fix ). У zsh это было с первого выпуска в 1990 году. Я не знаю насчет bash. у bash 1.05 этого не было.