]> git.donarmstrong.com Git - zsh.git/blob - .zsh/zshrc/64_ssh
981e6a07babaed519dbbd2501c57d178e6814a66
[zsh.git] / .zsh / zshrc / 64_ssh
1 # -*- mode: sh -*-
2
3 # set up ssh-agent
4 if which ssh-agent >/dev/null && [ -d ~/.ssh ] &&  \
5     [ -z "$SSH_CONNECTION" ] &&  [ -z "$SSH_CLIENT" ]; then 
6     if [ -e ~/.ssh/ssh_agent_info ] && \
7         [ -n "$(awk -F '[=;]' '/^SSH_AGENT_PID/{print $2}' ~/.ssh/ssh_agent_info)" ] && \
8         kill -0 "$(awk -F '[=;]' '/^SSH_AGENT_PID/{print $2}' ~/.ssh/ssh_agent_info)" >/dev/null 2>&1; then
9         . ~/.ssh/ssh_agent_info > /dev/null
10     elif [ -e ~/.ssh/ssh_agent_info_$(hostname) ] && \
11         kill -0 "$(awk -F '[=;]' '/^SSH_AGENT_PID/{print $2}' ~/.ssh/ssh_agent_info_$(hostname))" >/dev/null 2>&1; then
12         . ~/.ssh/ssh_agent_info_$(hostname) > /dev/null
13     else
14         ssh-agent -s > ~/.ssh/ssh_agent_info_$(hostname)
15         . ~/.ssh/ssh_agent_info_$(hostname) > /dev/null
16     fi;
17 fi;
18