Интерактивные оболочки могут хранить введённые команды. Здесь рассматривается Bash, где встроенная команда history показывает и управляет этой записью. Другие оболочки могут использовать иные клавиши, файлы и настройки.
Командная строка · Урок 9
history
Научитесь просматривать, искать, повторно использовать и управлять историей команд Bash.
Просмотр истории Bash
Запустите history для вывода текущего списка:
$ history
101 pwd
102 ls -la
103 cat notes.txt
Каждая строка содержит номер истории и команду.
Какая команда Bash показывает текущий нумерованный список истории?
Повторное использование команд
Bash предоставляет несколько способов вызвать или сразу выполнить команды:
- Стрелка вверх: вернуть предыдущую команду для проверки или редактирования.
!!: раскрыть и выполнить последнюю команду.- По номеру:
!102выполняет запись 102. - По префиксу:
!catвыполняет последнюю команду, начинавшуюся сcat.
Расширения с ! могут выполнить команду сразу после Enter. При сомнении сначала проверьте совпадение, особенно перед добавлением повышенных прав или работой с важными файлами.
Какое расширение истории Bash повторяет последнюю выполненную команду?
Интерактивный поиск истории
Нажмите Ctrl+R, затем вводите часть нужной команды. Повторное Ctrl+R переходит к более старому совпадению.
Enter выполнит показанную команду. Чтобы сначала проверить или изменить её, стрелкой перенесите команду в строку редактирования.
Вы помните часть прежней команды Bash и хотите найти её интерактивно. Что нажать сначала?
Управление списком истории
Встроенная команда умеет менять и сохранять список:
history -c: очистить текущую историю в памяти.history -w: записать текущий список в настроенный файл, обычно~/.bash_history.history -d <offset>: удалить запись в указанной позиции.
Примеры:
$ history -d 101
$ history -w
Очистка списка в памяти не гарантирует исчезновения старых команд из всех файлов, резервных копий и других активных оболочек. Поведение зависит от настроек Bash и времени чтения и записи файлов сеансами.
Какая команда записывает текущую историю Bash в настроенный файл?
Очистка экрана и дополнение имён
Команда clear обновляет видимую область терминала:
$ clear
Она не стирает историю Bash. В зависимости от терминала прежний вывод может оставаться и в буфере прокрутки.
Дополнение по Tab помогает не вводить имена заново. Начните команду, имя файла или каталога и нажмите Tab. Bash может дополнить однозначное совпадение или показать варианты.
Командные строки попадают в историю, поэтому не помещайте пароли, токены и другие секреты прямо в команды, если есть более безопасный способ ввода.
Какая команда обновляет видимый терминал, не удаляя историю команд из памяти?
Урок завершён
Вы завершили history
Теперь вы умеете находить и повторно использовать команды Bash, осознанно управляя историей.
Показывать текущий нумерованный список.
Осторожно вызывать и раскрывать предыдущую команду.
Искать историю интерактивно через
Ctrl+R.Удалять, очищать и записывать историю.
Отличать историю команд от содержимого экрана.
Сохраните прогресс
Создайте бесплатный аккаунт, чтобы сохранить этот урок и продолжить на любом устройстве.
Создать бесплатный аккаунт