我使用的是 oh-my-zsh,以及一些自定义脚本,可以自动将特定文件夹下的子目录添加到 PATH。以 android studio 为例,假设~/android-studio/bin
包含在 PATH 中,按下TAB
后studio
,zsh 给出提示:
➜ ~ studio
studio64.vmoptions studio.png studio.sh studio.vmoptions
➜ bin ll studio*
-rw-r--r-- 1 j j 559 May 26 13:44 studio64.vmoptions
-rw-r--r-- 1 j j 9.6K May 26 13:44 studio.png
-rwxr-xr-x 1 j j 6.7K May 26 13:44 studio.sh
-rw-r--r-- 1 j j 566 May 26 13:44 studio.vmoptions
显然只有studio.sh
我想要的可执行文件。有什么选项可以阻止 zsh 自动完成不可执行的命令吗?
更新:studio
然后在家里输入CTRL+X h
:
➜ ~ studio
tags in context :completion::complete:-command-::
commands builtins functions aliases suffix-aliases reserved-words jobs parameters (_command_names _autocd)
commands (_path_commands _command_names _autocd)
jobs (_jobs _command_names _autocd)
parameters (_parameters _command_names _autocd)
local-directories (_cd _autocd)