Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

Пошук в історії

У будь-який час ми можемо переглянути вміст списку історії:



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

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


За замовчуванням bash зберігає останні 500 команд, які ми ввели, хоча більшість сучасних дистрибутивів встановлюють це значення на 1000. Як налаштувати це значення, ми побачимо в наступному розділі. Скажімо, ми хочемо знайти команди, які ми використовували для переліку / usr / bin. Один із способів зробити це:



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

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


І припустимо, що серед наших результатів ми отримали рядок, що містить цікаву команду на зразок цієї:

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

Число «88» — це номер рядка команди в списку історії. Ми могли б використати це негайно, використовуючи інший тип розширення, який називається розширення історії. Щоб використати наш виявлений рядок, ми можемо зробити це:



[me@linuxbox ~]$ ! 88

[me@linuxbox ~]$ ! 88


bash розгорне «!88» до вмісту вісімдесят восьмого рядка в списку історії. Є й інші форми розширення історії, які ми розглянемо трохи пізніше.

bash також надає можливість поступового пошуку в списку історії. Це означає, що ми можемо наказати bash шукати список історії, коли ми вводимо символи, при цьому кожен додатковий символ ще більше покращує наш пошук. Щоб розпочати інкрементний пошук, натисніть Ctrl-r, а потім введіть текст, який ви шукаєте. Коли ви знайдете його, ви можете натиснути Enter, щоб виконати команду, або натиснути Ctrl-j, щоб скопіювати рядок зі списку історії в поточний командний рядок. Щоб знайти наступне входження тексту (переміщення «вгору» по списку історії), знову натисніть Ctrl-r. Щоб припинити пошук, натисніть Ctrl-g або Ctrl-c. Ось ми бачимо це в дії:


[me@linuxbox ~]$

[me@linuxbox ~]$


Спочатку натисніть Ctrl-r:


(зворотний пошук)`':

(зворотний пошук)`':


Підказка змінюється, щоб вказати, що ми виконуємо зворотний інкрементний пошук. Це «зворотне», тому що ми шукаємо від «зараз» до деякого часу в минулому. Далі ми починаємо вводити наш пошуковий текст. У цьому прикладі «/usr/bin»:



(зворотний пошук)`/ usr / bin': ls -l /usr/bin > ls-output.txt

(зворотний пошук)`/ usr / bin': ls -l /usr/bin > ls-output.txt


Одразу пошук повертає наш результат. З нашим результатом ми можемо виконати команду, натиснувши Enter, або ми можемо скопіювати команду в наш поточний командний рядок для подальшого редагування, натиснувши Ctrl-j. Давайте скопіюємо це. Натисніть Ctrl-j:


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

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


Повернеться підказка оболонки, і наш командний рядок завантажений і готовий до дії! У таблиці нижче наведено деякі натискання клавіш, які використовуються для маніпулювання списком історії:

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


Ключова дія

Ключова дія

зображення

зображення

зображення

Ctrl-p Перехід до попереднього запису історії. Те ж саме, що і стрілка вгору. Ctrl-n Перехід до наступного запису історії. Те ж саме, що і стрілка вниз. Alt-< Перехід на початок (верх) списку історії.

Alt-> Перейти до кінця (внизу) списку історії, тобто до поточного командного рядка.


зображення

Ctrl-r Зворотний інкрементний пошук. Поетапний пошук із поточної командної рядки доводить до списку історії.


зображення

Alt-p Зворотний пошук, без збільшення. За допомогою цієї клавіші введіть рядок пошуку та натисніть Enter, перш ніж пошук буде виконано.


зображення


зображення

Alt-n Пошук вперед, без збільшення.


зображення

Ctrl-o Виконати поточний елемент у списку історії та перейти до наступного. Це зручно, якщо ви намагаєтеся повторно виконати послідовність команд у списку історії.


зображення


Найпопулярніші хмарні обчислення ОС на OnWorks: