问题
I upgraded my macbook to OSX Catalina recently. Ever since that upgrade my zsh autocomplete (tab completion) for ssh is really slow (previously, it was reasonably fast, e.g. autocomplete would happen in a few seconds). Some details that I think are relevant:
- I have a
~/.ssh/config
file with ~2000 hosts configured - When I type
ssh x <TAB>
things seem to hang, typing ctrl-C saysKilled by signal in _ssh_hosts after 22s
so it seems that my_ssh_hosts
script is the problem
Any tips on how to debug this? Or alternate _ssh_hosts
function I could use?
回答1:
I've put together a solution that works for me using zstyle
thanks to this email thread
My solution was to make my ~/.zshrc
contain the following
function refresh_ssh_autocomplete () {
host_list=($(cat ~/.ssh/config | grep 'Host ' | awk '{s = s $2 " "} END {print s}'))
zstyle ':completion:*:(ssh|scp|sftp):*' hosts $host_list
}
refresh_ssh_autocomplete
来源:https://stackoverflow.com/questions/59940971/zsh-autocomplete-slow-for-ssh