在bash下敲命令时,Tab键可以补全已经敲了一部分的文件名和目录名。如果是Ubuntu系统,系统默认启用了bash completion,还可以补全命令的某些参数、Makefile目标等等。如果是Debian系统,可以用以下命令启用bash completion:
$ source /etc/bash_completion
建议将这一行加入~/.bashrc启动脚本中。比如使用sudo后面接命令,如果没有bash completion则只有sudo可以补全,后面的命令不能补全。如果启用了bash completion,则后面的命令,包括命令的某些参数(比如aptitude命令的install)都可以补全了。
比如在主目录下要列出桌面目录的内容,输入(不回车)
$ ls De
然后敲Tab键,如果以De开头的文件或文件夹只有Desktop一个,就自动补全为
$ ls Desktop
否则,再敲一次Tab键,将会把所有以De开头的文件或文件夹列在下面供你选择(在这里我们手动创建另外一个以De开头的文件)
$ touch Death
$ ls De
Death Desktop/
你可以再补敲一个s再Tab,这次Desktop就会补全到命令后面了。
有的人是从DOS时代过来的,留下一个很不好的习惯就是在找一个文件时反复地cd、ls、cd、ls。。。等找到了要找的文件时再想回到先前的目录,已经不记得先前是从哪个目录转到这里来的了。