Назад | Перейти на главную страницу

Командная строка Linux - Ctrl + r - не работает, так что здорово

Когда бы я ни ударил Ctrl+р в моей командной строке кажется, что у меня есть 10 миллисекунд, чтобы закончить ввод того, что я ищу, и в этот момент он ищет все, что я набрал до сих пор.

Также, похоже, отсутствуют набранные мной команды.

Кроме того, когда я нажимаю escape после такого неудачного поиска, он помещает в мою командную строку все глупости, которые он нашел. Как мне вернуться к пустой командной строке?

Также как пролистать результаты поиска?

Если обратный поиск не может быть лучше, есть ли лучший способ поискать в моей истории?

«I» в «reverse-i-search» означает «инкрементный», поэтому поиск выполняется по мере ввода. Если вы хотите, чтобы он подождал, пока вы не закончите ввод, вы можете использовать history-search-backward (не связан) или non-incremental-reverse-search-history (привязан к Meta-p). Чтобы использовать эти функции, вы сначала вводите текст, а затем нажимаете клавишу, которая вызывает функцию.

у меня есть history-search-backward привязан к PgUp, а «history-search-forward» привязан к PgDn.

Как вы знаете, чтобы завершить поиск, нажмите Esc. Чтобы прервать поиск, оставив пустую командную строку, нажмите Ctrl-G.

Если у тебя есть очень долгая история, могла быть причиной задержки. Переменные HISTSIZE и HISTFILESIZE используются bash для установки максимального размера истории.

Также проверьте переменную HISTIGNORE на наличие игнорируемых (т.е. не занесенных в историю) команд. Например, я настроил игнорировать такие команды, как ls или выход которые мне не нужны в моей истории.

Чтобы «прокрутить» результаты поиска, продолжайте нажимать Ctrl-r (назад) или Ctrl-s (вперед). Однако будьте осторожны, Ctrl-s часто используется для "блокировки" терминала (с Ctrl-Q для разблокировки), поэтому вам, возможно, придется переназначить что-то другое. Вы можете использовать что-то вроде

stty stop ^G

чтобы сопоставить Ctrl-g с блокировкой терминала и освободить ярлык Ctrl-s, используемый bash (для поиска вперед в истории).