![有没有办法告诉 shell(最好是 zsh)有关命令的信息?](https://linux22.com/image/1294333/%E6%9C%89%E6%B2%A1%E6%9C%89%E5%8A%9E%E6%B3%95%E5%91%8A%E8%AF%89%20shell%EF%BC%88%E6%9C%80%E5%A5%BD%E6%98%AF%20zsh%EF%BC%89%E6%9C%89%E5%85%B3%E5%91%BD%E4%BB%A4%E7%9A%84%E4%BF%A1%E6%81%AF%EF%BC%9F.png)
我定义了一个别名:
alias school="cd ~/School/3BaFys/"
快速转到3BaFys
包含我今年所需的所有目录的文件夹。
有没有办法告诉zsh
我什么时候这样做:
$school Num<TAB>
扩展为
$school Numerieke\ Methoden
Numerieke \Methoden
的子目录在哪里~/School/3BaFys/
例如,告诉 shellschool
实际上做什么并使其变得智能?
答案1
是的。
我刚刚发现本文描述如何去做。
基本上,您将别名重写为一个函数,然后对其使用一些 compctl 魔法。
这应该可以解决你的问题:
school() { cd ~/School/3BaFys/$@; }
compctl -/ -W ~/School/3BaFys school