如何在Ubuntu Linux中添加bash自动完成功能
时间:2020-01-09 10:37:04 来源:igfitidea点击:
如何在Ubuntu Linux 18.04/20.04 LTS中启用自动完成功能?
如何在Ubuntu Linux中编写简单的bash完成代码?
Bash是与sh兼容的命令语言解释器,它执行从标准输入或文件读取的命令。
Bash可以运行大多数sh脚本而无需修改。
bash-completion是shell函数的集合,这些函数利用了Ubuntu Linux上bash的可编程完成功能。
该页面显示了如何在Ubuntu Linux中安装和启用Bash自动完成功能。
如何在Ubuntu Linux中添加bash自动完成功能
在Ubuntu中添加bash完成的过程如下:
- 打开终端应用程序
- 通过运行以下命令刷新Ubuntu上的软件包数据库:
sudo apt update
- 通过运行以下命令在Ubuntu上安装bash-completion软件包:
sudo apt install bash-completion
- 注销并登录以验证Ubuntu Linux中的bash自动完成是否正常工作
让我们详细了解所有步骤。
如何在Ubuntu中添加bash完成
Bash补全是自动完成文件名,命令等的有用工具。
键入以下apt命令/apt-get命令以在Ubuntu Linux中安装自动完成功能:
$ sudo apt update $ sudo apt install bash-completion
如何测试Bash的可编程完成
安装程序放置了一个名为/etc/profile.d/bash_completion.sh的shell脚本。
您可以在cat命令的帮助下进行查看:
$ cat /etc/profile.d/bash_completion.sh
启用bash智能完成功能的Bash Shell代码
您可以将/etc/profile.d/bash_completion.sh添加到~/.bashrc文件中,如下所示:
## source it from ~/.bashrc or ~/.bash_profile ## echo "source /etc/profile.d/bash_completion.sh" >> ~/.bashrc ## Another example Check and load it from ~/.bashrc or ~/.bash_profile ## grep -wq '^source /etc/profile.d/bash_completion.sh' ~/.bashrc || echo 'source /etc/profile.d/bash_completion.sh'>>~/.bashrc
如何在Ubuntu上启用bash完成并在当前会话中使用它
该脚本将在您的登录会话或开始新的Shell会话时自动获得调用。
对于当前会话,请使用source命令加载它:
$ source /etc/profile.d/bash_completion.sh
在键入命令以自动完成语法或选项时,按[TAB]键:
$ sudo apt i[TAB] $ cat /etc/re[TAB]
编写您的第一个简单的bash完成代码
假设您始终要使用host命令检查三个域名的IP地址。
因此,在shell提示符下键入以下内容:
complete -W 'google.com theitroad.local theitroad.com' host
现在键入host,然后按[TAB]键将任一域名用于host命令:
host [TAB]
在Ubuntu 18.04上执行bash完成的host命令