2013-12-11 1 views
11

В приглашении bash я могу набрать Ctrl-r и Ctrl-s, чтобы выполнить инкрементный поиск моей истории команд. Однако поиск чувствителен к регистру: если у меня есть команда «cat SomeFile.txt», и я нажимаю «Ctrl-r somefile», я ничего не получаю.В bash readline, как сделать инкрементный регистр поиска нечувствительным

Есть ли способ сделать этот поиск нечувствительным к регистру?

ответ

10

Короткий ответ: Нет, вы не можете получить эту функцию в BASH в настоящее время, так как эта функция не была построена еще в vi or emacs mode. Как я уже отмечал выше, completion-ignore-case применяется только к завершению, а не к isearch.

-1

посмотрите, есть ли у вас файл с именем «inputrc» в «~/.inputrc» или «/ etc/inputrc» и добавьте строку.

set completion-ignore-case on 
+2

'завершение-игнорировать-кейс' применяется только к завершению, а не к' isearch' – anubhava

+0

Я думаю, что он по-прежнему будет применяться. Поскольку «ctrl-R» обратный поиск использует утилиту «readline» для соответствия строк. Как указано в документации «Если установлено значение« Вкл. », Readline выполняет совпадение и завершение имени файла нечувствительным к регистру». Я бы предположил, что он использует какое-то завершение, чтобы придумать совпадение, поэтому он все равно должен работать. – user2840647

+1

Нет, существует большая разница между завершением и поиском. Попробуйте сами в своем терминале. – anubhava