Есть ли способ сделать вкладку Bash без учета регистра?
$ bash --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)
Copyright (C) 2007 Free Software Foundation, Inc.
Я использую Mac OS X 10.6
macos
command-line
bash
shell
Джеффри Эйлсворт
источник
источник
/etc/inputrc
или~/.inputrc
файл, обозначенный какINPUTRC
- единственные места, куда он может пойти. Ввод этого в приглашении Bash не будет работать.^X ^R
перезагрузитьinputrc
bind "set completion-ignore-case on"
из командной строки; потому что, я полагаю, только эта терминальная сессияПерестройка с учетом ретроспективного взгляда, чтобы противопоставить плюсы и минусы использования
[.]inputrc
против.bash_profile
.Наконечник шляпы, чтобы подчеркнуть за его помощь.
Примечание: редактирование командной строки в Bash обеспечивается библиотекой Readline; настраивать его нетривиально, но стоит учиться; его функции включают возможность определения пользовательских сочетаний клавиш для вставки предопределенных фрагментов текста - см. Редактирование командной строки в Справочном руководстве Bash.
Для того, чтобы настойчиво сделать закладки завершение нечувствительно к регистру в Bash:
Вариант А: Если у вас уже есть:
/etc/inputrc
файл (применяется в масштабах всей системы, модификация требуетsudo
)и / или
~/.inputrc
файл (пользовательский)и / или
вы планируете широко настраивать библиотеку readline и / или хотите сделать настройки эффективными и для скриптов, когда они вызывают
read -e
:Добавить строку
в любой файл, в зависимости от того, хотите ли вы, чтобы настройки были эффективными для всех пользователей или текущего пользователя (создайте файл, если необходимо).
Связанная команда, которая упрощает заполнение имен файлов и каталогов:
Это избавляет от необходимости дважды нажимать клавишу Tab, если найдено более одного совпадения.
Вариант Б: в качестве альтернативы вы можете добавить команды Readline в свой пользовательский
~/.bash_profile
файл в OS X (или~/.bashrc
в Linux), передав их в качестве единственного аргументаbind
встроенному :Обратите внимание, что
bind
команды в~/.bash_profile
/~/.bashrc
имеют приоритет над эквивалентными командами в/etc/inputrc
или~/.inputrc
.Как указывалось выше, конфигурация Readline, определенная таким образом, не будет действовать в сценариях, которые вызывают
read -e
активацию поддержки Readline для чтения пользовательского ввода.источник
cd
команд. Это решит этот вопрос и сэкономит мне тысячи нажатий клавиш. :)show-all-if-ambiguous
. Однако, поскольку вы говорите «в качестве альтернативы», есть ли какая-то польза от этогоbind
, когдаinputrc
файлы кажутся ненужными?inputrc
, ни другого , но я с радостью создал~/.inputrc
и добавил их, а также другие действительно полезные директивы. Я предполагаю, что мы предполагаем, что все читатели знают, что/etc/inputrc
влияет на других пользователей (если последний не отменяет затронутые настройки)? Просто пока мы упоминаем предостережения;)Чтобы не изменять конфигурацию для всех пользователей и не получать root-права, используйте следующее:
Затем войдите в систему или перезагрузите ~ / .inputrc
источник