Перейти к содержимому

Как посмотреть всю историю выводы терминала

  • автор:

Горячие клавиши в терминале Linux

Давным-давно, такие слова как «hot keys» и «keyboard shortcuts» мне не всегда удавалось перевести на русский без потери лица. Как-то раз, я написал «клавиатурные сокращения», чем сразу же привлёк косые взгляды и вызвал смелые медицинские фантазии. Но вроде бы сейчас принято везде говорить и писать «горячие клавиши». О них и поговорим.

Данная заметка — шпаргалка по линуксовой оболочке Bash и смежным компонентам. Часть приводимых ниже команд относится к библиотеке Readline, часть — к сигналам Linux, однако такие подробности нам здесь не важны. Если вам приходится часто иметь дело с терминалом в Linux (и вы не меняли Bash на другой шелл), то будет очень полезно использовать эти самые «сокращения» на благо себе и в мирных целях. Текст написан для начинающих пользователей, но кто знает — может быть и вы найдёте в нём что-то новое и полезное для себя.

Для удобства будем считать, что по умолчанию под терминалом мы понимаем стандартную в настольной редакции Ubuntu программу «Терминал Gnome».

Вкладки

В программе “Терминал Gnome” предусмотрены вкладки, и работают они аналогично вкладкам в веб-браузере или файловом менеджере. Иными словами, если вам нужно несколько терминалов, вовсе не обязательно открывать несколько окон. Достаточно одного окна с несколькими вкладками. Ниже приведены горячие клавиши, относящиеся ко вкладкам:

Ctrl+Shift+T — открыть новую вкладку;

Ctrl+Shift+W или Ctrl+D — закрыть текущую вкладку (или весь терминал, если вкладка одна);

Ctrl+Shift+N — открыть новое окно терминала из текущего.

Со временем вы можете оказаться в ситуации, когда вкладок станет действительно много, и тогда возникнет вопрос о навигации между ними. Вам пригодятся следующие сочетания клавиш:

Ctrl+PgDn — перейти на следующую (справа) вкладку;

Ctrl+PgDn — перейти на предыдущую (слева) вкладку;

Ctrl+Shift+PgDn — сдвинуть вкладку вправо;

Ctrl+Shift+PgUp — сдвинуть вкладку влево.

Alt+1 — перейти на первую по счёту вкладку. Подставьте другую цифру для нужной вам вкладки. Данный способ позволяет «дотянуться» максимум до десятой по счёту вкладки.

Навигация

Три очень часто используемые комбинации для копирования и вставки текста, а также отмены выполняющейся команды:

Ctrl+Shift+С — копирование в буфер обмена;

Ctrl+Shift+V — вставка из буфера обмена;

Ctrl+C — прерывание выполняющейся команды или очистка текущей строки.

Для того чтобы выделить нужный текст в терминале, вам потребуется воспользоваться мышью. Тем не менее, в программе “Терминал Gnome” имеется встроенное средство поиска текста, которое позволяет искать как по обычному фрагменту, так и по регулярному выражению:

Ctrl+Shift+F — вызов встроенного поиска по любому тексту в терминале.

Если команда в терминале слишком длинная, или вы сделали опечатку в начале и не сразу это заметили, вы можете вернуться в начало строки. А затем — снова в конец. Вот как это сделать:

Ctrl+A — переместиться в начало строки;

Ctrl+E — переместиться в конец строки.

В терминале Linux можно перемещаться внутри строки также по словам и по отдельным символам (в последнем случае, это аналогично использованию клавиш с боковыми стрелками):

Ctrl+F — переместиться на 1 символ вперед;

Ctrl+B — переместиться на 1 символ назад;

Alt+F — переместиться к следующему слову;

Alt+B — переместиться в начало предыдущего слова.

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

Предыдущие команды касались навигации по терминалу и строке ввода команды. Далее стоит рассмотреть управляющие команды Bash, с помощью которых можно запускать, останавливать, ставить на паузу и возобновлять команды и процессы. Вы уже знаете, что запущенный в терминале процесс можно прервать по Ctrl+C, но полезно также знать и некоторые нюансы.

В терминале Linux вы можете не только завершать программы полностью, но и ставить их на паузу. Затем выполнение программы можно возобновлять, причём, как с возвратом интерактивной командной строки, так и без него:

Ctrl+Z — приостановка процесса;

команда bg — возобновление процесса с возвратом командной строки (процесс продолжает выполнение в фоне);

команда fg — возобновление процесса, при котором он удерживает командную строку за собой (процесс выполняется на «переднем плане»).

Процессы также можно приостанавливать и возобновлять. Запустите какую-либо команду, например htop , и нажмите Ctrl+Z. Сначала будет казаться, будто команда завершилась, но она будет числиться в списке запущенных процессов ( ps -a ) и появится вновь после ввода команды fg.

Если повторить эксперимент с графическим приложением, например, введя команду firefox , то можно будет использовать для его «оживления» как fg , так и bg . При любом варианте приложение останется «закреплённым» за текущим терминалом: если вы закроете его, то оно тоже завершится.

После приостановки процесса firefox в терминале рабочая среда Gnome будет считать, что приложение «не отвечает».

Существует и другой тип «приостановки»: временное прекращение вывода выполняющейся команды. Как консольное, так и графическое приложение может быть запущено в терминале, в который будет выводиться текущая диагностическая информация. Иногда бывает очень удобно временно прекратить постоянный вывод сообщений без завершения самого приложения. Для этого пригодятся следующие сочетания клавиш:

Ctrl+S — прекратить обновление вывода команды;

Ctrl+Q — возобновить вывод команды.

История команд

Bash умеет запоминать все введённые вами команды. Пока терминал запущен, они хранятся в оперативной памяти компьютера, а при выходе из терминала записываются в долговременное хранилище в файле ~/.bash_history .

Если вы точно знаете, что вводили нужную вам команду раньше, поищите её в истории:

history — вывод истории команд;

Если вы помните хотя бы часть команды, поиск можно уточнить:

history | grep — пример уточняющего поиска по истории командам.

У каждой команды в истории есть номер. Введите этот номер, поставив вначале восклицательный знак, и Bash выполнит соответствующую команду:

!151 — выполнить команду под номером 151 из истории;

!151: — показать команду номер 151, но не выполнять её;

!! — повторно выполнить последнюю введенную команду.

В Bash имеется интерактивный режим поиска по истории команд. Нажмите Ctrl+R и начните набирать часть команды. Bash сам предложит вам первый совпадающий вариант. Если он не подходит, нажимайте Ctrl+R дальше для перебора вариантов. Когда нужный вариант будет найден, нажмите Enter.

Интересно, что у этой клавиши ввода есть два аналога — вместо Enter можно нажать Ctrl+M или Ctrl+J.

Самый простой способ перемещаться по истории команд — стрелки «вверх» и «вниз» на клавиатуре. Они тоже имеют дубликаты:

Ctrl+P — вывести предыдущую команду;

Ctrl+N — вывести следующую команду.

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

Самое время рассмотреть средства редактирования команд — они в Bash весьма продвинутые. Удобное перемещение в начало и конец строки, выборочное удаление символов и слов — это лишь часть возможностей, которые могут пригодиться пользователю. За редактирование команд отвечают следующие сочетания клавиш:

Ctrl+U — удалить весь текст слева от курсора;

Ctrl+K — удалить весь текст справа от курсора;

Ctrl+W — удалить 1 слово или параметр слева от курсора;

Ctrl+D — удаление текущего символа (аналогично Del);

Ctrl+H — удаление предыдущего символа (аналогично Backspace);

Alt+D — удалить всё справа от курсора до ближайшего пробела;

Alt+Backspace — удалить всё слева от курсора до ближайшего пробела;

Alt+T — поменять местами текущее слово с предыдущем;

Esc+T — поменять местами два предыдущих слова;

Tab — автодополнение команды после ввода её первых символов.

Ещё одна любопытная деталь: у Bash имеется собственный буфер обмена, который работает независимо от стандартного буфера (как мы помним, копирование по Ctrl+Shift+C, вставка по Ctrl+Shift+V). Это важно, поскольку у первых трёх команд из предыдущего списка есть дополнительные функции: они не просто удаляют часть текста, но и копируют его в тот самый отдельный буфер обмена Bash. Поэтому, будет справедливо уточнить:

Ctrl+U — вырезать и поместить в буфер обмена весь текст слева от курсора;

Ctrl+K — вырезать и поместить в буфер обмена весь текст справа от курсора;

Ctrl+W — вырезать и поместить в буфер обмена 1 слово или параметр слева от курсора;

Кстати, для вставки скопированного текста обратно сработает комбинация Ctrl+Y.

Напоследок

Конечно, выше я описал не все горячие клавиши: их гораздо больше, и полное описание содержало бы в себе кучу бородатой экзотики, унаследованной из древних университетских времён UNIX. В любом случае, не забывайте про man bash (например, там есть замечательный раздел Commands for Moving) и про bind -P .

  • bash
  • командная строка
  • горячие клавиши
  • сочетания клавиш
  • Настройка Linux
  • *nix
  • Серверное администрирование

Горячие клавиши терминала Linux

Какие сочетания клавиш использовать, чтобы работа с терминалом стала проще и быстрее.

Эта инструкция — часть курса «Linux: горячие клавиши и команды».

Смотреть весь курс

Введение

Терминал Linux — один из самых мощных инструментов на вооружении данного семейства операционных систем. Для неподготовленного пользователя, однако, вряд ли покажется чем-то удобным в использовании: горячие клавиши, к которым мы привыкли в Windows, часто не работают или работают не так, как мы от них ждем. В результате, первое знакомство с терминалом, как правило, бывает неприятным.
В данной статье мы рассмотрим комбинации клавиш, которые сильно упростят жизнь всем, кто работает с терминалом.

Как открыть терминал в Linux

В Ubuntu и других популярных дистрибутивах есть специальные горячие клавиши для того, чтобы открыть эмулятор терминала — специальную программу, которая является альтернативным источником ввода-вывода. Простыми словами, эмулятор терминала — это аналог стандартной консоли терминала внутри графической оболочки. Открыть терминал в Ubuntu можно с помощью комбинации клавиш Ctrl + Alt + T.

Управление окном эмулятора терминала

Указанные ниже сочетания клавиш упростят вашу работу с терминалом GNOME и большинством других приложений эмуляторов терминала.

  • Ctrl + Shift + Q — закроет текущее окно терминала.
  • Ctrl + Shift + T — откроет дополнительную вкладку терминала.
  • Ctrl + Shift + W — закроет текущую вкладку.
  • Ctrl + Shift + D — превратит вкладку в отдельное окно.
  • Ctrl + PgUp — переместит на предыдущую вкладку.
  • Ctrl + PgDown — переместит на следующую вкладку.

Переключение между tty-сессиями в терминале.

В терминале Linux есть возможность переключаться между разными сессиями терминала, своеобразными «рабочими столами» в контексте командной строки. Для переключения между разными сессиями, например, когда кажется, что терминал завис, нажмите комбинацию: Ctrl + Alt + f2. Вы можете переключаться между шестью разными сессиями. Для переключения назад на первую tty-сессию терминала нажмите Ctrl + Alt + f1.

Нажатие комбинации Ctrl + Alt + f7, в свою очередь, управляет отображением графической оболочки ОС.

Управление вводом: автодополнение команд и исправление опечаток

TAB

Клавиша TAB — самая частая и основная в использовании среди всех горячих клавиш Linux. Данная клавиша поможет вам дополнить команду или путь к файлу или предложит варианты, если их несколько.
Для использования данного функционала начните набирать команду и нажмите TAB после введения нескольких символов.

  • Одно нажатие — дополняет команду.
  • Два нажатия — предлагает несколько вариантов, если введенный текст имеет несколько вариантов продолжения. Например, двойное нажатие Tab поможет написать длинный путь к нужному файлу или директории.

Ctrl + Shift + «-»

Сочетание клавиш Ctrl Shift и знака «минус» поможет вам отменить последний ввод в терминал. Команда очень полезна, если вы выбрали не тот вариант из меню предложенных в автодополнении или сделали опечатку.

Ctrl + T

Это сочетание клавиш меняет местами два соседних символа и может быть очень полезна, если вы опечатались и написали слово неправильно. Например, используя данное сочетание клавиш, можно с легкостью исправить selectle на правильный вариант — selectel.

Alt + T

Это сочетание клавиш уже посерьезнее, чем предыдущее и меняет местами целые слова. Например, с помощью этого сочетания, можно парой нажатий исправить I Selectel Love на правильный вариант — I Love Selectel.

Alt + Backspace и Alt + D

Эти два сочетания помогут быстро удалить ненужные части введенных ранее команд.

  • Alt + Backspace поможет удалить слово, стоящее перед курсором (слева).
  • Alt + D удаляет все символы, которые находится справа от курсора в текущей строке.

Управление курсором

В какой-то момент стрелочек на клавиатуре будет недостаточно для быстрого перемещения по тексту, и вам понадобятся новые комбинации. Они позволят быстрее ориентироваться в тексте и набирать команды.

  • Ctrl+A (Home) совершит быстрый переход в начало строки.
  • Ctrl+E (End) переместит курсор в конец строки текста.
  • Alt+B переместит курсор назад (влево) на одно слово.
  • Ctrl+B переместит курсор назад (влево) на один символ.
  • Alt+F сдвинет курсор на слово вправо.
  • Ctrl+F сдвинет курсор на слово вправо.
  • Ctrl+XX мгновенно переместит курсор в начало текущей строки, выделив весь текст на своем пути. С помощью этого сочетания клавиш можно выделить строку или исправить что-то в ее начале. Второе нажатие комбинации переместит позицию курсора назад.

Работа с буфером обмена

В терминале также есть возможность пользоваться буфером обмена: копировать в него текст, вырезать и вставлять в строку или в файл, открытый в терминале.

Ctrl + W

Это сочетание клавиш поможет вырезать стоящее перед курсором слово и скопировать его в буфер обмена.

Ctrl + U

Это сочетание вырежет и скопирует в буфер обмена текущую строку.

Ctrl + K

Сочетание клавиш Ctrl и K вырежет строку, находящуюся справа от курсора.

Shift + Insert

Данное сочетание клавиш нужно для того, чтобы вставить в терминал текст, находящийся в буфере обмена.

Ctrl + Y

Вставит в поле ввода последний скопированный или вырезанный в буфер обмена текст.

Форматирование текста в терминале

Следующий набор горячих клавиш сильно упростит работу с регистром символов, введенных в терминал. В Linux и UNIX-системах регистр играет важную роль, поэтому данные команды также будут очень полезны.

Alt + U

После того, как вы нажмете это сочетание клавиш, все символы справа от курсора и до конца текущего слова сменят регистр на верхний.

Alt + L

Сочетание Alt + L работает наоборот: все символы справа от курсора и до конца текущего слова сменят регистр на нижний.

Alt + C

При активации этого сочетания клавиш символ, находящийся под курсором, изменит регистр с нижнего на верхний, а курсор переместится в конец слова.

Работа с историей bash

Терминал хранит историю выполненных пользователем команд. Если вы хотите ее посмотреть, выполните следующую команду:

history 

Эта команда не очень удобна, когда нужно быстро вспомнить ранее введенную команду и выполнить ее в командной оболочке. В этом нам помогут сочетания клавиш.

Ctrl + P

Данное сочетание клавиш заменяет стрелку «вверх». Используйте его, чтобы переместиться к команде, выполненной ранее. Вы можете использовать данное сочетание неограниченное количество раз, каждый раз перемещаясь к более ранней команде.

Ctrl + N

Это сочетание клавиш, в свою очередь, является альтернативой стрелке «вниз» и нужно, чтобы переместиться по истории в обратную сторону.

Ctrl + R

После нажатия этого сочетания клавиш в терминале появится строка поиска, которая поможет найти и выполнить команду из истории команд, ранее запущенных через терминал. Для выполнения предложенной команды, просто нажмите Enter, а для редактирования предложенной команды или выхода из поиска — Esc.

  • Ctrl + 0 сразу выполнит найденную команду без изменений.
  • Ctrl + G завершит работу с инструментом поиска по истории без выполнения найденной команды.

Alt + R

Если вы нашли в истории команду, уже отредактировали и хотите отменить изменения, нажмите это сочетание клавиш. Команда вернется к первоначальному виду.

Управление процессами

В терминале Linux также есть горячие клавиши для легкого управления запущенными в терминале процессами.

Ctrl + C

Данное сочетание клавиш необходимо знать любому пользователю терминала. С его помощью можно завершить процесс, выполняющийся на данный момент в терминале. Это сочетание клавиш мгновенно отправит программе сигнал SIGINT, и если программа не завершит работу должным образом, он будет принудительно остановлен. Иными словами, эта комбинация убивает текущий процесс.

Ctrl + D

Сочетание Ctrl + D завершает работу терминала, посылая в терминал запрос EOF или «конец файла». После получения данного запроса, работа терминала завершается. Если у вас в терминале открыто активное ssh подключение, то комбинация Ctrl + D разъединит вас с удаленным хостом. Это сочетание клавиш является альтернативой команды exit.

Ctrl + Z

Сочетание Ctrl + Z пошлет текущему процессу запрос SIGSTP и приостановит его выполнение до востребования. Запустить приостановленный процесс можно с помощью следующей команды:

Посмотреть список приостановленных процессов вы можете, выполнив команду:

jobs 

Сочетания клавиш для управления отображением

При помощи сочетаний клавиш, приведенных ниже, вы сможете легко управлять количеством информации, находящейся в окне терминала.

Ctrl + L

Это сочетание — альтернатива команде clear. После нажатия Ctrl + L терминал очистится от результатов выполнения предыдущих команд.

Ctrl + S

Сочетание клавиш Ctrl + S остановит вывод в терминал. Команда не прекратит выполняться, но вывод данных непосредственно в терминал будет приостановлен.

Ctrl + Q

Нажатие этой горячей клавиши снимет вывод в терминал с паузы, на которую вы его поставили нажатием клавиши Ctrl + S.

Заключение

В этой инструкции мы рассмотрели, как пользоваться горячими клавишами Linux, чтобы работа с терминалом была проще и быстрее.

Основные команды Linux: почти полное руководство с примерами

Структура и типы файловых систем в Linux

Зарегистрируйтесь в панели управления

И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.

Читайте также:

Инструкция

Как создать веб-приложение на базе Telegram Mini Apps

Инструкция

Что делает команда chmod и как ее использовать в Linux

Инструкция

Как разработать gRCP-сервис на Go

Работа с историей команд bash

Количество хранимых команд определяется двумя переменными: HISTSIZE и HISTFILESIZE . Первая определяет количество команд, хранимых в памяти, вторая — в файле. Их уместно устанавливать в ~/.bachrc . Такие значения, мне представляются оптимальными:

HISTSIZE=5000 HISTFILESIZE=10000 

Настройка способа сохранения

По умолчанию, каждый экземпляр bash переписывает историю. То есть, если вы запустите два терминала, что-то в них сделаете, а потом закроете, то история сохранится только от последнего закрытого. (Она затрёт историю первого закрытого.) Это очень неудобно и легко исправляется вот такой командой:

shopt -s histappend 

которую тоже уместно написать в ~/.bachrc .

Простой просмотр истории

history 

Пять последних команд:

history 5 

В сочетании с grep :

history | grep cd 

Но это всё только присказка.

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

Восклицательный знак выполняет команду с данным номером. Пример:

~$ ls -ld /bin lrwxrwxrwx 1 root root 7 май 31 2013 /bin -> usr/bin ~$ history 3 4220 cd 4221 ls -ld /bin 4222 history 3 ~$ !4221 ls -ld /bin lrwxrwxrwx 1 root root 7 май 31 2013 /bin -> usr/bin ~$ echo !4221 echo ls -ld /bin ls -ld /bin 

Как видно из последней команды, подстановка с восклицательным знаком может быть частью другой команды. Она может быть использована в пайпе или в другом контексте. Примеры:

$ sudo !4221 $ !4221 >/dev/null 

Номер может быть относительным, с конца: !-2 . Специальное сокращение !! — последняя команда.

Передвижение по истории

Все знают о том, что по истории можно двигаться клавишами-стрелками. Но иногда бывают ситуации, когда эти клавиши недоступны, работают не правильно, или просто отсутствуют (у меня такое было, когда я подключался каким-то ssh-клиентом с iPad). На этот случай полезно знать, что промотка работает по Ctrl-p и Ctrl-n .

Поиск по истории

Режим поиск включается по Ctrl-r . Для поиска следующего совпадения надо повторно нажать Ctrl-r . Для передвижения по совпадениям в другую строну есть сочетание клавиш Ctrl-s .

Проблема в том, что Ctrl-s в большинстве терминалов приводит к засыпанию. Чтобы выйти из сна, нажмите Ctrl-q . Чтобы отключить засыпание, есть команда:

stty -ixon 

Поиск по истории по началу команды

Bash (а вернее readline) поддерживает очень удобный стиль поиска — по первым символам команды. К сожалению, по умолчанию, этот механизм недоступен. Чтобы его включить, надо написать в ~/.inputrc что-то такое:

# Shift-[Up][Down] "\e[1;2A" history-search-backward "\e[1;2B" history-search-forward 

Теперь вы можете набрать начало команды и нажать Shift- . И для вас будет найдена последняя команда из истории с таким же началом. Стрелки с клавишей Shift теперь позволяют двигаться по совпадениям.

Естественно, можно настроить любые другие клавиши.

Подстановки и изменения команд

Вы уже видели три простейшие подстановки:

  • !! — последняя команда
  • !n — n-ная в истории команда (с номером n)
  • !-n — n-ная с конца команда

После восклицательного знака можно указывать подстроку-начало команды.

!ls — последняя команда ls (со всеми аргументами).

Можно указывать подстроку для поиска:

!?encoder? последняя команда с подстрокой encoder .

Операции с отдельными словами

Все слова (параметры разделённые пробелами) доступны через модификатор : (двоеточие). Пример:

$ cd /home $ echo . 1 echo /home /home 

Здесь !! — ссылка на последнюю команду, а :1 ссылка на её первый аргумент. Поэтому, в нашем примере echo . 1 преобразуется в echo /home .

Для этого случая: когда мы оперируем именно с последней командой, можно опускать один восклицательный знак и двоеточие:

$ echo !1 

Есть и привычные сокращения: первый аргумент — ^ , последний — $ , все — * . Имеются ввиду именно параметры команды. Без учёта самой команды.

Манипуляции с путями и именами файлов

Следующий уровень модификаторов позволяет минимально управлять именами файлов.

Модификатор :t даёт доступ к имени файла. Эта удобно скажем в таком сценарии работы:

Вы обращаетесь к некому файлу, указывая полный путь:

cat /etc/hosts 

Потом переходите в директорию с этим файлом

cd /etc 

Выполняете ещё какие-то команды, а потом решаете отредактировать файл. Тогда вы можете написать так:

vi !cat:$:t 

То есть, вы находите в историю последнюю команду cat ( !cat ), берёте её последний аргумент :$ , а от него оставляете только имя файла :t .

Модификатор :h работает противоположно, он отрезает имя файла, оставляя весь остальной путь. Это полезно, например, когда вы хотите перейти в директорию с последним просмотренным файлом:

vi /etc/hosts cd $vi:$:h 

Последняя команда перейдёт в директорию /etc .

Последний модификатор из этой серии — :r . Он отрезает расширение. Его можно указывать несколько раз, есть вы хотите отрезать несколько расширений ( .tar.gz ).

История — Основы командной строки

Чем больше работаешь в командной строке, тем чаще возникает необходимость повторять введенные ранее команды. Самый простой способ просматривать историю команд — нажимать клавиши «вверх» и «вниз». При каждом нажатии стрелки «вверх» в поле ввода начнет появляться предыдущая выполненная команда, если нажать «вниз» — то следующая.

В этом уроке вы узнаете, как работать с историей и где это может пригодиться.

История команд bash хранится в специальном файле .bash_history , который лежит в домашней директории пользователя. Каждый раз, когда пользователь вводит команду, она попадает именно в этот файл. Он ничем не отличается от остальных файлов: его можно открыть, посмотреть и даже отредактировать. За то, какое количество команд хранится в истории, отвечает переменная окружения HISTFILESIZE . Если она выставлена, то берется указанное в ней число. Если переменной нет, история не обрезается и файл .bash_history растет бесконечно:

tail .bash_history rm -r one/ env HOME=/tmp cd pwd cd echo $HOME export HOME=/tmp id exit id 

Посмотреть историю можно и более простым способом. Достаточно выполнить команду history :

history 1 docke rps 2 free -m 3 docker ps 4 docker exec -it 8678a6520641 bash 5 ls 6 exit 7 docker ps 8 docker exec -it 1209b6e5ce6b bash . 

Эта команда выведет содержимое файла .bash_history , добавив слева номер. Если набрать history 5 , то отобразятся только пять последних введенных команд. Используя номер команды в выводе history , можно выполнить повторный запуск без необходимости набирать или копировать команду из истории:

# Эта команда имела второй номер в списке выше !2 free -m total used free shared buff/cache available Mem: 1998 1532 75 21 390 227 Swap: 0 0 0 

При необходимости историю всегда можно погрепать:

history | grep export 174 export HOME=/tmp 183 history | grep export 

Последнее и самое интересное — реверсивный поиск. Если нажать комбинацию Ctrl + r , то запустится поиск по истории. Он ожидает ввода символов и сразу отображает ближайшую команду, в которой эти символы встречаются. Если найденное соответствие вас не устроило, то повторное нажатие Ctrl + r выберет следующее соответствие из истории:

На скриншоте выше продвинутая версия этого поиска, работающая через утилиту fzf .

Самостоятельная работа

Проанализируйте историю на своем локальном компьютере и поэкспериментируйте с реверсивным поиском.

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

  • Статья «Как учиться и справляться с негативными мыслями»
  • Статья «Ловушки обучения»
  • Статья «Сложные простые задачи по программированию»
  • Вебинар «Как самостоятельно учиться»

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов

Наши выпускники работают в компаниях:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *