在 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
看看配置之后的效果
如果觉得有用记得收藏点赞
在Linux的终端中输入tab键时,有时会出现命令不能补全的情况,此时有一种原因是bash错误。
使用 ls -l /bin/sh 命令发现
/bin/sh - /bin/dash
dash是一个不同于bash的Shell,它主要为了执行脚本而出现,而不是交互,它速度更快,但功能比bash要少的多。语法严格遵守POSIX标准。
通过命令 ln -sf bash /bin/sh 可以将dash改成bash。此时问题可以解决。
Ubuntu系统在某些情况下,apt-get 不能补全相关命令,可以通过修改/etc/bash.bashrc文件的相关行,把默认的#号去掉即可。
if [ -f /etc/bash_completion ]; then
/etc/bash_completion
fi
重新登录Shell即可。
此处参考: .
本文出自 “ 低调的前进 ” 博客,请务必保留此出处
Linux里的tab命令补全键用不了是操作错误造成的,解决方法如下:
1、打开LINUX的操作系统,首先在左边任务栏里面找到终端,鼠标左键点击打开终端命令窗口。
2、输入ls可以查看当前所有的目录,输入pwd可以查看目前所在的目录,如果要改变目录,这些目录的名字都很长,不方便全部输入,那么输入第一个字母。
3、接下来按键盘的tab键,这里就可以得到某个文件或者目录的全称,就避免过多的输入了。
4、如果遇到首写字母都是一样的目录,按一下tab后是没反应的。
5、需要再按一下tab,也就是一共两下tab就可以出来这些首写字母一样的文件或者目录了。
Linux终端命令快捷键汇总
相信很多Linux桌面用户都对使用Linux终端感到反感,其实它没大家想的那么复杂,很多常见操作都可以直接在终端中进行。特为大家汇总了提升终端命令执行效率的快捷操作,希望能帮助你学习和提升效率。
移动定位光标
在终端中移动光标和定位似乎非常不便,其实不是你想的那样,有很多种方式可以让键盘成为你的好朋友,只是需要掌握正确的方法而已。
定位单词
在长段的命令中,使用 Ctrl + ← 和 Ctrl + → 可快速将光标定位到命令中单词的首字母或末尾,实现在各单词之间的快速跳动定位。
你可以试着在终端中输入 apt-get install build-essential 命令后,按 Ctrl+ 左键或 Ctrl + 右键来试试效果。
定位行首和行尾
定位到命令行首可以使用 Ctrl + A,行尾则使用 Ctrl + E 快捷键。
清除部分、全部或整行
使用 Ctrl + K 快捷键可以将当前光标位置之后的所有部分快速清除,Ctrl + W 可以清除当前光标位置之前的一个单词,而 Ctrl + U 则可以直接刚整行命令直接清除。
自动补全命令或路径
tab 键可以直接补全命令和路径,让我们免去很多输入错误的可能。当然,在命令记不全时,只需输入几个首字母即可用 tab 键来补,还是十分方便的'。
例如:要在 Ubuntu 安装软件,只需输入 apt-get ins 按 tab 之后即可被补全成 apt-get install。
切换最近使用的命令
在Linux 的终端历史记录中会记下用户执行过的命令,用户只需按键盘的 ↓、↑ 上下箭头即可快速切换执行过的命令。
复制前行
!! 双惊叹号直接表示上一行命令,例如要用 sudo 重复执行上一条命令,无需再输一遍,只需执行如下命令即可:
1. sudo !!
执行指定历史命令
若你想重复执行的命令不是「上一条」,则不能再使用 !! 了。此时使用 ! 跟上要重复执行的前述命令开头即可。
复制前一个参数
将文件夹复制并粘贴到新路径后,你可能还要在目录中进行其它操作,此时可以这样切换:
1. cd !$
其中的 !$ 表示上次使用的参数,通常只用于目录。
目录导航
在Linux 终端中进行目录导航和切换还是使用 cd 命令,下面介绍一些 cd命令的常见操作。
导航到特殊文件夹
在Linux 中操作文件夹时输入路径就是一个苦差事,但若你是通过桌面登录系统的话,可以直接将要指定的文件夹拖入终端窗口,而不必手动输入路径。
回到上级目录
与Windows 一样,使用 cd.. 即可。如果要在父目录的各文件夹之间进行切换,使用 ../文件夹名即可。
回到上个目录
如果你操作到一半时,需要返回上个进入过的目录,可以使用 – 破折号:
1. cd -
其它目录导航操作
cd 返回家目录
pwd 查看当前目录
cd / 回到根目录(需要有权限)
多任务
执行多条命令
要在 Linux 终端中同时执行多个任务,只需用 符号将多条命令串连起来即可,例如:
1. apt-get update apt-get upgrade
命令失败备用
只会在前面一条命令执行成功时才会继续执行后续命令,如果你想在首条命令执行失败时提供备用命令,只需将 替换为 || 即可。
后台执行任务
在任意 Linux 命令最后加上 符号即可将此任务丢到后台去执行,比较适合运行时间较长的任务。对于后台执行的任务可以使用jobs 命令进行显示查看,也可以用 kill 将其干掉或用fg 命令将其挪到前台.
;