Маленькие хитрости при работе с историей введенных в терминале команд.
1. Жмем в терминале Ctrl+R и начинаем набирать текст, который хотим найти.
Если совпадений несколько, то для перебора можно использовать стрелки вверх, вниз и клавиши PageUp и PageDown.
2. Сначала пишем начальные символы текста, который хотим найти, затем перебираем варианты нажимая клавиши PageUp, PageDown.
3. Команда history | grep текст_для_поиска. Тут я думаю все понятно.
Что-то у меня только третий пункт работает :) Первый и второй - нет. Может, что-нибудь в профайле прописать нужно? Переменные какие-нибудь?
ОтветитьУдалитьВ профайле ничего писать не нужно.
ОтветитьУдалитьВ чистом Bash работает =) Только что проверил.
Жмем CTRL+R стандартная строка bash'a меняется на такое:
(reverse-i-search)`': После этого набираем текст, который нужно найти.
Какая у тебя используемая оболочка:
bash --version
ОтветитьУдалитьGNU bash, version 3.2.39(1)-release (i686-pc-linux-gnu)
Gentoo Linux
GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu) от Ubuntu 8.10
ОтветитьУдалитьНе знаю в чем дело, но PageUpы не работают. В доках упоминания про PageUpы не нашел. Стрелки верх-вниз работают для перебора предыдущих команд, а не для перебора совпадений.
Для перебора совпадений используется повторное нажатие Ctrl+r (будет листать совпадения назад по списку). Чтобы листать вперед - Ctrl+s.
Александр, скорее всего у тебя переопределены сочетания клавиш в inputrc.
ОтветитьУдалитьDa, skore imenno tak i est.
ОтветитьУдалитьEsli interesno, to mogu podelit'sa.
Если не трудно, было бы здорово.
ОтветитьУдалитьВот мой конфигурационный файл
ОтветитьУдалитьinputrc
Небольшой совет. Никогда не вводите "рекурсивные" команды с текущей директорией в качестве параметра: 'chown -R user:group' . или ещё хуже 'rm -frd .'
ОтветитьУдалитьЕсли вы случайно возьмёте эту команду из истории, то скорее всего текущая директория окажется ... другой, например, / :) А в остальном, CTRL+R очень полезная команда. Она, кстати, работает и в mysql.
leonko.blogspot.com/2011/07/bash.html
ОтветитьУдалитьОписано как правельно работать с рекурсивным поиском.
Спасибо за ссылочку.
ОтветитьУдалитьПочитаем
Спасибо!
ОтветитьУдалить2-ой вроде удобнее но не работает на сервере "из коробки"
1-ый работает, буду использовать Ctrl+R.
ОС. Centos 7!
Thanx!
P.S. Работает с оговоркой! У меня Bash.
ОтветитьУдалить1) стрелочки и пейджапы - выбирают команду из истории.
2) последующие Ctrl+R выводят более старые совпадения если таковые имеются