优化 Bash 可编程补全与初始化文件使用指南
1. 可编程补全功能介绍
可编程补全是在 bash 2.04 版本引入的一项特性,它通过为补全机制提供钩子来扩展内置的文本补全功能。这意味着你几乎可以实现任何想要的补全形式。例如,当你输入 man 命令时,按下 Tab 键就能列出手册章节,可编程补全就能实现这样的功能,甚至更多。
1.1 可编程补全基础命令
要实现特定方式的文本补全,首先需要通过 complete 命令告知 shell 在按下 Tab 键时如何进行补全。 complete 命令的主要参数可以是命令名或任何你希望进行文本补全的内容。
以 gunzip 实用程序为例,它用于解压缩各种类型的压缩存档。通常,当你输入 $ gunzip [TAB][TAB] 时,会得到一个文件名列表,但其中可能包含不适合 gunzip 处理的文件。我们可以使用 complete 命令来设置只显示适合 gunzip 处理的文件:
complete -A file -X '!*.@(Z|gz|tgz)' gunzip
需要注意的是,为了使 @(Z|gz|tgz) 生效,你需要通过 shopt -s extglob 开启扩展模式匹配。
这里的 <
超级会员免费看
订阅专栏 解锁全文
7

被折叠的 条评论
为什么被折叠?



