如何让Bash单次Tab补全仅含单目录的嵌套子路径?
Bash一次性补全单嵌套目录的方法
Bash可以实现这种一次性补全唯一嵌套路径的需求,这里有两种实用的实现方式:
利用
globstar通配符快速展开- 先在终端执行
shopt -s globstar开启该选项(把这条命令添加到~/.bashrc里就能永久生效) - 输入最上层目录名加上
**,比如src/**,然后按Tab键,Bash会自动把路径展开到最深的唯一子目录层级,直接得到src/main/java/com/mycompany这类完整路径。
- 先在终端执行
用
autocd快速跳转目录
如果你的需求是快速进入这类嵌套目录,开启shopt -s autocd后,输入src/**再按回车,就能直接跳转到最深的子目录,省掉手动输入cd的步骤。
如果需要更定制化的补全逻辑,也可以编写自定义的Bash补全函数,但上述两种方法已经能覆盖绝大多数场景的需求。
内容的提问来源于stack exchange,提问作者Stephen Blake
相关产品推荐
相关产品推荐

