Главная > Среда и утилиты > fc

fc: Редактирование и повторное выполнение команд истории оболочки

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

Обзор

`fc` расшифровывается как 'fix command' (исправить команду) и помогает выбрать определенную команду из истории оболочки для открытия в редакторе по умолчанию или для немедленного повторного выполнения без редактирования. Это позволяет сэкономить время при повторяющихся задачах или исправлении опечаток.

Основные функции

  • Редактирование команд истории оболочки
  • Повторное выполнение команд истории без редактирования
  • Выбор и обработка определенного диапазона команд
  • Возможность указать редактор по умолчанию

Основные опции

Команда `fc` предоставляет различные опции для управления обработкой истории.

Управление поведением

Сгенерированная команда:

Комбинируйте команды.

Описание:

`fc` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

Изучите различные примеры использования команды `fc`, чтобы освоить управление историей и повторное выполнение команд.

Редактирование и повторное выполнение последней команды

fc

Последняя выполненная команда открывается в редакторе по умолчанию (обычно `vi`) для редактирования. После сохранения команда будет повторно выполнена.

Редактирование последней команды с указанием редактора

fc -e nano

Редактирование и повторное выполнение последней команды с использованием редактора `nano`.

Просмотр списка последних 5 команд

fc -l -5

Выводит список последних 5 выполненных команд с их номерами.

Редактирование диапазона команд

fc 100 105

Открывает для редактирования команды с номерами истории от 100 до 105, после чего они будут повторно выполнены.

Повторное выполнение предыдущей команды (без редактирования)

fc -s

Немедленно повторно выполняет последнюю выполненную команду без вызова редактора. Опция `-s` подавляет вызов редактора.

Повторное выполнение команды, начинающейся с определенной строки

fc -s ssh

Находит последнюю команду, начинающуюся с `ssh`, и повторно выполняет ее без редактирования.

Замена строки в предыдущей команде и повторное выполнение

fc -s old_string=new_string

Изменяет 'old_string' на 'new_string' в последней команде и повторно выполняет ее. Это похоже на сочетание клавиш `^old_string^new_string^`.

Советы и предостережения

Советы и предостережения, которые помогут вам использовать команду `fc` более эффективно и безопасно.

Настройка редактора по умолчанию

Вы можете указать редактор по умолчанию для `fc`, установив переменную окружения `$FCEDIT` или `$EDITOR`.

  • Пример: export FCEDIT=nano
  • Приоритет: $FCEDIT имеет приоритет над $EDITOR.

Проверка номеров истории

Вы можете использовать команду `history` для просмотра списка истории текущей оболочки и номеров каждой команды. Это полезно при указании конкретной команды для `fc`.

Безопасное повторное выполнение

При повторном выполнении сложных команд, особенно содержащих конвейеры (|) или перенаправления (>, >>), безопаснее сначала открыть команду в редакторе с помощью `fc`, чтобы проверить и изменить ее. `fc -s` выполняет команду немедленно без редактирования, поэтому следует быть осторожным.


Те же команды в категории