linux命令自动补全
linux系统下怎么命令自动补全呢,下面是具体介绍。
输入“命令的前几个字符”,之后按TAB键即可自动补全。比如,想更改密码,但只记得这个命令前几个字母是pass。这时候,按Tab键,shell就自动输出 passwd 命令,十分方便。
拓展资料
在shell命令行可以使用“Tab”键自动补全命令或文件名,这种功能其实可以在shell脚本中实现,使得使用“Tab”键可以自动补全自定义的shell函数,相关命令有三个,pgen、plete和popt。
1、pgen
pgen [option] [word]
pgen命令根据option生成与word可能匹配的补全,并打印到标准输出中,这些选项可以是内建命令plete所支持的任何选项,但不能是“-p”和“-r”,如果使用了“-F”或“-C”,则由可编程补全功能设置的各个shell变量虽然仍可以使用,但它们的值却没什么作用。补全条目以相同的方式生成,就好像可编程补全代码用相同的补全选项直接生成了补全条目一样,如果指定了word,则只显示与之匹配的条目。
2、plete
plete [-abcdefgjksuv] [-o p-option] [-DE] [-A action] [-G globpat] [-W wordlist] [-F function] [-C mand] [-X filterpat] [-P prefix] [-S suffix] na [na ...]
plete -pr [-DE] [na ...]
plete命令指定如何对各个名称进行补全。如果指定了选项“-p”或者没有指定任何选项,则把已有的补全方法用一种可以重新作为作为输入的格式打印出来。选项“-r”用以删除指定名称的补全方法,不指定名称时删除所有的名称的补全方法。选项“-D”的意思是其后的选项和动作将应用到默认命令补全,也就是说之前未定义的补全命令也可以补全。选项“-E”的意思是其后的选项和动作将应用到空命令补全,也就是说补全空白行。对于选项“-G”、“-W”、“-X”、“-P”和“-S”,应该使用括号进行保护,防止补全开始前被扩展。
“-o bashdefault”如果没有生成补全条目,就使用bash默认的其它补全。
“-o default”如果没有生成补全条目,就使用“readline”默认的文件名补全。
“-o dirnas”如果没有生成补全条目,就进行目录名补全。
“-o filenas”告诉“readline”生成文件名,以便进行与文件名相关的处理,例如在目录名后面加上斜杠,引用特殊字符,去掉行尾的空格,目的是用于shell函数。
“-o noquote”告诉“readline”不引用文件名,默认会进行引用。
“-o nospace”告诉“readline”在补全的名称后不添加空格,默认添加空格。
“-o plusdirs”生成补全条目之后,还会进行目录名补全并把结果添加到其它动作得到的结果中。
“-A alias”别名,同选项“-a”。
“-A arrayvar”数组变量名。
“-A binding”“readline”键绑定名。
“-A builtin”shell内建命令名,同选项“-b”。
“-A mand”命令名,同选项“-c”。
“-A directory”目录名,同选项“-d”。
“-A disabled”不可用的shell内建命令名。
“-A enabled”可用的shell内建命令名。
“-A export”导出的shell变量名,同选项“-e”。
“-A file”文件名,同选项“-f”。
“-A function”shell函数名。
“-A group”组名,同选项“-g”。
“-A helpic”内建命令help支持的帮助主题。
“-A hostna”主机名,从shell环境变量HOSTFILE中获取。
“-A job”作业名,同选项“-j”。
“-A keyword”shell保留字,同选项“-k”。
“-A running”正在运行的作业名。
“-A service”服务名,同选项“-s”。
“-A set”内建命令set的选项“-o”可用的参数。
“-A shopt”内建命令shopt可接受的选项名。
“-A signal”信号名。
“-A sped”暂停的作业名。
“-A user”用户名,同选项“-u”。
“-A variable”所有的shell变量名,同选项“-v”。
“-C mand”在子shell中执行命令,并把其结果作为补全条目。
“-F function”在当前的shell环境中执行函数function,执行时,参数“$1”表示那个参数正在进行补全的命令名,参数“$2”表示补全的名称,参数“$3”表示补全的名称前面的单词,表示结束执行时,从数组变量COMPREPLY中获取补全条目。
“-G globpat”使用文件名扩展模式globpat进行扩展以生成可能的补全条目。
“-P prefix”在所有的选项应用到补全结果后,在结果前添加前缀prefix。
“-S suffix”在所有的选项应用到补全结果后,在结果后添加后缀suffix。
“-W wordlist”使用特殊变量IFS中的字符拆分单词列表wordlist,并扩展拆分后的每个单词,结果中与待补全单词
匹配的条目就是补全条目。
“-X filterpat”filterpat是进行文件名扩展时使用的模式,它作用于通过前面的选项和参数生成的补全列表,并把每个与过滤模式匹配的条目删除,模式中前导的叹号表示否定,这时会删除与过滤模式不匹配的条目。
3、popt
popt [-o option] [-DE] [+o option] [na]
popt命令修改每个名称指定的补全选项,如果没有指定名称则修改当前执行的补全的选项,如果也没有指定选项,则显示每个名称或当前补全所用的选项。选项可能的取值就是上面的内建命令plete的有效选项。
以上就是小编今天的分享了,希望可以帮助到大家。
生活小妙招
- 杭州市小客车总量调控管理暂行规定
- 个人所得税退税的条件和标准 下载个人所得税
- 江苏省南通市通州区天气 江苏省南通通州区天气
- 夫妻有按揭的房子离婚怎么办 夫妻有按揭的房子
- 山东省青岛市市北区天气 山东省青岛市市北区天
- 什么财产离婚后不用分割 什么财产离婚后不用分
- 工伤认定必须满足三个条件 工伤认定申请必须满
- 家暴出轨不受离婚冷静期限制 家暴不适用离婚冷
- 武夷山一周天气预报 武夷山一周天气预报15天准
- 怎么与孩子沟通最有效方法 怎么与孩子沟通的技
- 女方提出离婚财产怎么分割 女方提出离婚财产怎
- 华东五市天气预报 华东五市的天气
- 深圳车辆违章记录查询 深圳车辆违章记录查询
- 老公铁了心要离婚还能挽回吗 老公铁了心离婚的
- 怎么计算工伤十级的赔偿金 工伤十级赔偿计算公
- 武汉天气预报15天气报 武汉天气预报15天