需要先安装一个组件,Bash对应的是bash-completion(Debian情况,不同发行版稍有不同,但completion这个词应该会出现)。
成都创新互联公司是一家专业提供安泽企业网站建设,专注与网站设计、成都做网站、HTML5建站、小程序制作等业务。10年已为安泽众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。
安装好这个包后,可以在需要的地方按Tab键,如果只有一个选项,那么命令会被直接补全,如果有多个选项,则Shell会先列出所有可选项,并重新显示刚才的输入内容,等待用户输入。
比如当前目录下有aaa,abb两个文件夹,输入:
cd a
后按Tab,则显示:
aaa abb
$cd a
如果输入:
cd ab
后按Tab,则显示:
$cd abb
以上假设以普通用户身份使用Bash。
1、用ls命令,查看你的种子文件名,可以手动复制粘贴种子文件名。
2、用ls命令,查看你的种子文件名后,手动输入前三个字符,然后按键盘上的最左边的tab键,shell会自动补齐文件名。
比如:
当前目录下有种子文件wertyuiopsdfghjklxcvbnm,和aaaa、bbbb等三个文件。
先输入ls,回车,列出这三个文件名。
再输入ls,空格再输入wer,然后按tab键,命令会自动补全为 ls wertyuiopsdfghjklxcvbnm。
首先,linux提示命令的快截键是 TAB键,在键盘的左侧,一般在capslock键的上面。比如你输入his,然后按一下tab键,就会出现his开头的命令,如下图所示。使用TAB键,一般来说,在访问文件夹的时候非常好用,它会自动补全路径名。
其次,在Linux的命令行上有很多种方法提高输入效率。比如
有 4 种方法可以重复执行上一条命令:
1、使用上方向键,并回车执行。
2、按 !! 并回车执行。
3、输入 !-1 并回车执行。
4、按 Ctrl+P 并回车执行。
Ctrl+R 快捷键让你对命令历史进行搜索,对于想要重复执行某个命令的时候非常有用。当找到命令后,通常再按回车键就可以执行该命令。如果想对找到的命令进行调整后再执行,则可以按一下左或右方向键。
再次,如果之前输入过相应的命令,可以通过history这个命令来查找到,并再次重复执行。示例如下:
# history | more
1 service network restart
2 exit
3 id
4 cat /etc/redhat-release
# !4
(3) matchbeep:
这个变数是用来控制何时发出警告声,也就是『毕』的一声,它具有下列几个值
可供设定:
nomatch: 为找出符合的档案或命令时,发出警告声。
ambiguous: 有很多档案或命令符合时,发出警告声。
notunique: 找到一精确符合的,但还有其他较长而且符合的档名或命令时,发出
警告声。
never: 无论在任何情况下都不发出警告声。
输入: set matchbeep=never 试试
在 Linux 命令行中,当输入字符后,按Tab 键,Shell 就会列出以这些字符开头的所有可用命令,如果只有一个命令匹配到,按一次 Tab 键就自动将这个命令补全。
如果输入pass,此时按 Tab 键,因为以pass开头的命令只有passwd这个命令, Shell 就会自动补全 passwd 命令。
另外如果输入的字符匹配多个命令则会列出所有可用的命令,比如,如果输入do,此时按 Tab 键 Shell 就会自列出可用的命令。
但是系统自带的命令补全功能有限,自动补全功能仅限于命令和文件名。
可以安装 Bash 命令补全增强软件包 bash-completion来实现更多命令的补全。
以Centos为例
直接通过yum命令安装
bash-completion版本信息
配置命令补全
命令补全的脚本存放在/usr/share/bash-completion/completions/目录,可以在这个目录查看支持增强补全功能的命令。
再试试输入docker命令后按tab键:
可以看到后续可用命令的提示,妈妈再也不用担心我记不住命令了。
同样对于kubenetes也可以实现命令的自动补全和提示:
如果是在安装bash-completion之后安装git是不能自动命令补全,需要手动进行一些配置。
git安装之后文档里会有git-completion.bash文件
安装完git之后重新source一下bash-completion
看看配置之后的效果
如果觉得有用记得收藏点赞