Is there a way to make the file/dir auto-complete in bash case insensitive?

For example I would like to write:
/opt/ibm/whatever/test [TAB]

And bash will auto-complete it to:

Or at least only the last part of test to TESTfile.

I know that filesystems are case-sensitive, I just don't want to remember which parts are UPPER-case, I want auto-complete to fix the path for me.

And if I have both TESTfile and testfile, just show me both of them like bash does today with auto-complete conflicts.


To add a little bit to this discussion;

shopt -s nocaseglob

This will affect wildcard expansion, so ls w* would show w1.txt W1.txt. However, as I understand it, tab-completion will ignore this setting.

You can affect tab-completion with inputrc;

echo 'set completion-ignore-case On' >> /etc/inputrc 

Or (~/.inputrc if your system is setup this way)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.