在zsh中使用ssh的自动补全功能时,如果你的/etc/hosts文件里指了一堆host,用tab补全会将hosts中的域名全部遍历出来,而这些host实际上根本不是我们想ssh到的地方,真正我们需要补全的往往是我们之前ssh过的,known_hosts中的host。

解决方案

~/.zshrc中,加入

 zstyle -e ':completion::*:*:*:hosts' hosts 'reply=(${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) /dev/null)"}%%[# ]*}//,/ })'

-- over --

上一篇:中文mac osx ssh到目标机器提示信息变为中文的解决方案 下一篇:Sublime text 3 for Mac的Packages相关


comments powered by Disqus
你的浏览器无法正常访问本页面,请更换高级浏览器,如: Google ChromeSafariFirefox,或 IE9以上版本的IE浏览器

qifendi.com github