如何在RHEL8(Red Hat Linux)中添加bash自动完成功能
时间:2019-11-20 08:52:57 来源:igfitidea点击:
Bash是一个与sh兼容的命令语言解释器,它执行从标准输入或者文件读取的命令。
Bash无需修改就可以运行大多数sh脚本。
bash-completion是一组shell函数,它们利用了rhel8上bash的可编程完成特性。
在这个教程中,我们将学习如何在RHEL8中安装和启用Bash自动完成功能(命令补全)。
如何在RHEL8中添加bash自动完成(自动补全)功能
在Red Hat Enterprise Linux 8中添加bash补全功能的步骤如下:
- 运行以下命令在RHEL 8上搜索bash completion:sudo yum search bash-completion
- 在RHEL 8上安装bash-completion: sudo yum install bash-completion
- 注销当前shell,登录到bash, 检查RHEL8中的bash-completion是否正常工作。
如何在RHEL 8中安装bash-completion
bash-completion是自动完成文件名、命令等的有用工具。
安装命令:
$ sudo yum install bash-completion
或者
$ sudo dnf install bash-completion
如何测试Bash-completion的补全功能
安装包创建了一个新的shell脚本文件:
$ vi /etc/profile.d/bash_completion.sh
内容如下:
if [ -n "${BASH_VERSION-}" -a -n "${PS1-}" -a -z "${BASH_COMPLETION_VERSINFO-}" ]; then # Check for recent enough version of bash. if [ ${BASH_VERSINFO[0]} -gt 4 ] || \ [ ${BASH_VERSINFO[0]} -eq 4 -a ${BASH_VERSINFO[1]} -ge 1 ]; then [ -r "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion" ] && \ . "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion" if shopt -q progcomp && [ -r /usr/share/bash-completion/bash_completion ]; then # Source completion code. . /usr/share/bash-completion/bash_completion fi fi fi fi
如何在当前会话中启用bash补全功能
使用source命令使配置生效:
$ source /etc/profile.d/bash_completion.sh
现在就可以使用补全功能了。
比如 输入 sour+tab键就可以直接补全source命令。