Linux命令自动补全功能!

  • Post category:Linux

Linux命令自动补全功能是指在使用Linux终端(bash shell)输入命令时,通过按下tab键或者两次按下tab键,能够自动补全命令或文件名的功能。这个功能可以提高命令输入效率,减少输入错误,同时也方便了新手学习和使用Linux。

使用这个功能需要注意以下几点:

  1. 必须先激活自动补全功能

在默认情况下,Linux的命令行很可能没有自动补全功能。为了启用自动补全功能,需要在Linux的bash shell中输入下面的命令:

source /etc/profile.d/bash_completion.sh

或者

. /etc/profile.d/bash_completion.sh

这个命令将启动bash shell的自动补全功能,并读入系统中已安装的所有可用Linux命令。

  1. 使用tab键来实现自动补全

启动自动补全功能后,只需输入命令(或文件名)的前几个字符,然后按下tab键,bash shell就会自动补全命令(或文件名)。

例如,如果要输入命令ls,只需键入l,然后按下tab键,bash shell就会自动补全为ls

$ l<按tab键>
ls
  1. 确定一个唯一的命令(或文件名)

如果您输入的命令(或文件名)只有一个可能的选项,bash shell可以用自动补全功能完成整个输入。如果有多个选项,bash shell将只完成可唯一确定,例如:

$ ca<按tab键>

上述命令可能自动补全为catcal,因为它们都以ca开头。在这种情况下,可以继续输入几个字符,然后再按下tab键,直到bash shell可以识别您要的选项。

$ ca<按tab键><按tab键>
cabextract  cal         calendar   cancel     
captoinfo   card        case       cast       
cat         catchsegv   cava       

按下两次tab键可以显示所有与输入字符串匹配的选项,例如:

$ ca<按tab键><按tab键>
cabextract  cal         calendar   cancel     
captoinfo   card        case       cast       
cat         catchsegv   cava       
  1. 自动填充命令参数

自动补全也适用于命令的参数。例如:

$ cd /etc/s<按tab键>

上述命令将自动补全为:

$ cd /etc/sysconfig/
  1. 自动填充文件名

自动补全还适用于文件名、目录名等。例如:

$ vi /etc/syslog.<按tab键>

bash shell会自动补全下面的文件:

$ vi /etc/syslog.conf

通过这样的方式,自动补全可以大大减少用户输入的时间和工作量。