diff options
| -rw-r--r-- | _posts/2009-09-03-working-with-key-passphrases.textile | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/_posts/2009-09-03-working-with-key-passphrases.textile b/_posts/2009-09-03-working-with-key-passphrases.textile index 988e66b..c168c84 100644 --- a/_posts/2009-09-03-working-with-key-passphrases.textile +++ b/_posts/2009-09-03-working-with-key-passphrases.textile @@ -42,10 +42,10 @@ SSH_ENV="$HOME/.ssh/environment" function start_agent { echo "Initializing new SSH agent..." # spawn ssh-agent - ssh-agent | sed 's/^echo/#echo/' > $SSH_ENV + ssh-agent | sed 's/^echo/#echo/' > "$SSH_ENV" echo succeeded - chmod 600 $SSH_ENV - . $SSH_ENV > /dev/null + chmod 600 "$SSH_ENV" + . "$SSH_ENV" > /dev/null ssh-add } @@ -63,14 +63,18 @@ function test_identities { } # check for running ssh-agent with proper $SSH_AGENT_PID -ps -ef | grep $SSH_AGENT_PID | grep ssh-agent > /dev/null -if [ $? -eq 0 ]; then - test_identities +if [ -n "$SSH_AGENT_PID" ]; then + ps -ef | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null + if [ $? -eq 0 ]; then + test_identities + fi # if $SSH_AGENT_PID is not properly set, we might be able to load one from # $SSH_ENV else - . $SSH_ENV > /dev/null - ps -ef | grep $SSH_AGENT_PID | grep ssh-agent > /dev/null + if [ -f "$SSH_ENV" ]; then + . "$SSH_ENV" > /dev/null + fi + ps -ef | grep "$SSH_AGENT_PID" | grep ssh-agent > /dev/null if [ $? -eq 0 ]; then test_identities else |
