首页 > 编程知识 正文

bash 命令补全,bash自动补全

时间:2023-05-06 15:42:27 阅读:235715 作者:4031

什么是shell ?

简单点理解,就是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具。实际上,在shell和计算机硬件之间还有一层东西那就是系统内核了。

打个比方,如果把计算机硬件比作一个人的躯体,而系统内核则是人的大脑,至于shell,把它比作人的五官似乎更加贴切些。

回到计算机上来,用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。

bash 是 linux 环境下面的命令行终端,对于命令和路径能自动补全,bash-completion则是对bash补全功能的一个增强,增加了对参数和包名的补全;

简单理解:【Bash简介 & Bash是如何处理命令的】

 

Ubuntu 环境安装【bash-completion】:

确认 /etc/bash_completion 是否存在,如果没有就安装一个;apt install bash-completion

 安装完成 /etc目录会出现一个bash_completion文件;

在用户的shell中运行;source /etc/bash_completion

 也可以将其加入配置文件中;

编辑文件,vi /etc/bash.bashrc 

取消上面的 if elif 的#符号注释,如下所示:

# enable bash completion in interactive shellsif ! shopt -oq posix; then if [ -f /usr/share/bash-completion/bash_completion ]; then . /usr/share/bash-completion/bash_completion elif [ -f /etc/bash_completion ]; then . /etc/bash_completion fifi  重新切换 bash 解释器,#bash

此时输入 apt 命令,按【tab】键,显示如下:

 

k8s 环境中 bash 自动补全:

确认 /etc/bash_completion 是否存在,如果没有就安装一个(同上);导入 bash 自动补全的命令;source <(kubectl completion bash)

重新切换 bash 解析器,#bash

以上操作安装好依赖包后,重新进入一下终端即可生效,输入kubectl 查看所有命令,按【tab】键,显示如下:

 

提示:

一切正常的话,就可以使用Tab健自动补全的功能了;如果还是不能Tab健补全的话,可以退出命令行,然后再重新打开终端;(推荐使用)或者重启系统以启动该软件 也可以;

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。