Терминал Ubuntu использует автозаполнение с учетом регистра, как я полагаю, было бы ожидаемо для Linux.
Но я думаю, что часто было бы удобнее использовать вместо этого регистр без учета регистра, чтобы избавить вас от необходимости быть точным при вводе имени и, вероятно, стоило бы дополнительных ложных срабатываний. Можно ли изменить это поведение?
command-line
bash
auto-completion
case-insensitive
mwfearnley
источник
источник
Ответы:
Чтобы сделать
bash
регистр не чувствительным для текущего пользователя:Запустите следующий скрипт оболочки в терминале:
Запустите новую оболочку (откройте терминал).
Чтобы внести изменения в масштабе всей системы:
Подробнее см
man bash
. Да, это длинная страница, но bash - довольно сложная программа, и если вы хотите просто найти на этой странице «без учета регистра», чтобы перейти к соответствующему разделу. Люди обычно изучают bash по одному варианту за раз или по одному bash-сценарию за раз, и для того, чтобы освоить все нюансы, требуется много времени. Ваш интерес может варьироваться.источник
>>
безопаснее, чем>
?$include /etc/inputrc
иset completion-ignore-case on
должно быть в вашем файле ~ ..inputrc.Откройте терминал и введите следующую команду:
Введите пароль. Перезапустите терминал.
Если в некоторых случаях вы хотите удалить без учета регистра, просто отредактируйте файл / etc / inputrc, удалив
set completion-ignore-case
строку.Вот и все.
источник
Я знаю, что этот вопрос очень старый, но если я что-то упустил, думаю, у меня есть супер простое решение, если вы используете bash.
Или просто добавьте строку, используя ваш любимый текстовый редактор. Перезапустите сеанс bash и наслаждайтесь.
источник
~/.inputrc
читается readline, что bash использует для обеспечения этого завершения. Readline также используется другими программами, так что для общей установки,~/.inputrc
как и предполагалось, принятый ответ будет лучше.bind 'set completion-ignore-case on'
перейти в новую строку.bashrc
Вы можете сделать это, установив конфигурационную переменную для GNU readline, которая обрабатывает ввод в интерактивной оболочке.
Необходимая переменная есть
completion-ignore-case
и может быть установлена непосредственно в вашей сессии bash с помощью:Его можно включить для всех будущих сеансов bash, поместив его в
~/.inputrc
файл пользователя или в систему/etc/inputrc
, чтобы включить его для всех пользователей. Это файл инициализации для readline.Но обратите внимание, что если вы создадите
~/.inputrc
, это переопределит системную копию . (Для меня это привело к тому, что я потерял некоторые сопоставления клавиш, такие какCtrl-Left
/Right
. Вы можете увидеть, какие из них просматриваете/etc/inputrc
файл.)Чтобы решить эту проблему, нужно поставить строку
$include /etc/inputrc
в верхней части~/.inputrc
, например:Чтобы применить изменения, перезагрузите Баш или перезагрузить INPUTRC , например , с Ctrl+x, Ctrl+r.
Более подробную информацию о readline и inputrc можно найти в
man bash
иman 3 readline
.источник