In bash, suppose I have this commands:
$ pyt[TAB][TAB] pytest python python-config python-dbg
99% of the time, I'd go for
python. It's so annoying that
pytest pop up and prevent me from typing only
pyt[TAB][RETURN] to invoke
python. Can I hide
pytest from bash completion?
I know that I can remove
/usr/bin/pytestto prevent suggestion within bash. But what if I have no root access? What if
pytestis an importance script that must exists in order to let other script work properly?
Even though I can remove
pytestbinary (and I've done it before), some time when I upgrade my software, this script comes back again.
I know that I can use
aliasto save keystrokes for my favorite application (maybe just
python). But I don't like these non-standard abbreviation. Its kind of make me confuse when remote to other machines.
So, anyway to hide some commands from bash completion? Answer in other shell (zsh, fish, etc) is welcome since bash doesn't speed up my workflow lately.