Онлайн-рабочие станции OnWorks Linux и Windows

Логотип

Бесплатный хостинг в Интернете для рабочих станций

<Предыдущая | Содержание: | Следующая>

История поиска

В любой момент мы можем просмотреть содержимое списка истории:



[я @ linuxbox ~] $ история | меньше

[я @ linuxbox ~] $ история | меньше


По умолчанию bash сохраняет последние 500 введенных нами команд, хотя большинство современных дистрибутивов устанавливают это значение равным 1000. Мы увидим, как изменить это значение в следующей главе. Допустим, мы хотим найти команды, которые мы использовали для вывода списка / USR / бен. Один из способов сделать это:



[я @ linuxbox ~] $ история | grep / usr / bin

[я @ linuxbox ~] $ история | grep / usr / bin


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

88 ls -l / usr / bin> ls-output.txt

Число «88» - это номер строки команды в списке истории. Мы могли бы использовать это немедленно, используя другой тип расширения, называемый расширение истории. Чтобы использовать нашу открытую строку, мы могли бы сделать это:



[я @ linuxbox ~] $ ! 88

[я @ linuxbox ~] $ ! 88


bash расширит "! 88" до содержимого восемьдесят восьмой строки в списке истории. Есть и другие формы расширения истории, о которых мы поговорим чуть позже.

bash также предоставляет возможность постепенного поиска в списке истории. Это означает, что мы можем указать bash выполнять поиск в списке истории по мере ввода символов, при этом каждый дополнительный символ дополнительно уточняет наш поиск. Чтобы начать инкрементный поиск, нажмите Ctrl-r, а затем введите искомый текст. Когда вы его найдете, вы можете либо нажать Enter, чтобы выполнить команду, либо нажать Ctrl-j, чтобы скопировать строку из списка истории в текущую командную строку. Чтобы найти следующее вхождение текста (перемещение «вверх» по списку истории), нажмите Ctrl-r еще раз. Чтобы выйти из поиска, нажмите Ctrl-g или Ctrl-c. Здесь мы видим это в действии:


[я @ linuxbox ~] $

[я @ linuxbox ~] $


Первое нажатие Ctrl-р:


(обратный поиск) `':

(обратный поиск) `':


Приглашение изменится, чтобы указать, что мы выполняем обратный инкрементный поиск. Это «наоборот», потому что мы ищем «сейчас» в какое-то время в прошлом. Далее мы начинаем вводить текст для поиска. В этом примере «/ usr / bin»:



(обратный поиск) `/ USR / бен': ls -l / usr / bin> ls-output.txt

(обратный поиск) `/ USR / бен': ls -l / usr / bin> ls-output.txt


Сразу же поиск возвращает наш результат. С нашим результатом мы можем выполнить команду, нажав Enter, или мы можем скопировать команду в нашу текущую командную строку для дальнейшего редактирования, нажав Ctrl-J. Скопируем. Нажмите Ctrl-J:


[я @ linuxbox ~] $ ls -l / usr / bin> ls-output.txt

[я @ linuxbox ~] $ ls -l / usr / bin> ls-output.txt


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

Таблица 8-5: Команды истории


Ключевое действие

Ключевое действие

изображение

изображение

изображение

Ctrl-p Переход к предыдущей записи в истории. То же действие, что и стрелка вверх. Ctrl-n Переход к следующей записи в истории. То же действие, что и стрелка вниз. Alt- <Перейти в начало (вверху) списка истории.

Alt-> Перейти в конец (низ) списка истории, т. Е. В текущую командную строку.


изображение

Ctrl-r Обратный инкрементный поиск. Выполняет пошаговый поиск из текущей командной строки вверх по списку истории.


изображение

Alt-p Обратный поиск, без инкремента. С помощью этой клавиши введите строку поиска и нажмите клавишу ВВОД перед выполнением поиска.


изображение


изображение

Alt-n Поиск вперед без инкремента.


изображение

Ctrl-o Выполнить текущий элемент в списке истории и перейти к следующему. Это удобно, если вы пытаетесь повторно выполнить последовательность команд в списке истории.


изображение


Лучшие облачные вычисления для ОС в OnWorks: