On debian (derived) systems, the bash completion scripts are bundled in the package bash-completion:
qwurx [shmem] ~ > dpkg -l bash\*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/T
+rig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Descripti
+on
+++-======================-================-================-=========
+========================================
ii bash 4.2-5ubuntu3 amd64 GNU Bourn
+e Again SHell
ii bash-completion 1:2.0-1ubuntu3 all programma
+ble completion for the bash shell
un bash-doc <none> (no descr
+iption available)
Don't know how that is handled on systems with the RPM package manager (RedHat, Fedora, SuSE, CentOS etc.).
You could grab the debian package, make a temporary directory and unpack the package file there with
ar x ~/Downloads/bash-completion_2.0-1_all.deb
You will find a data.tar.gz which contains the files, unpacking that (tar xfz data.tar.gz) you will find the directories etc/ and usr/. Reolcate their content to the system root. The sourcing code for the completion files is in /etc/bash.bashrc as follows:
# enable bash completion in interactive shells
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi
I guess that on non-debian systems the setup is similar.
perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'
|