Files
dot_files/ssh-with-timeout.sh

32 lines
637 B
Bash
Executable File

#!/bin/bash
SSH_ENV="$HOME/.ssh/environment"
function load_key_file {
local key_rsp="$(ssh-add -L 2>&1)"
if [[ "${key_rsp}" == *"The agent has no identities"* ]]; then
ssh-add /home/anaber/.ssh/id_rsa
fi
}
function start_ssh_agent {
ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
}
if [ ! -e "${SSH_ENV}" ]; then
start_ssh_agent
. "${SSH_ENV}" > /dev/null
else
. "${SSH_ENV}" > /dev/null
ps -ef | grep ${SSH_AGENT_PID} | grep -q ssh-agent$ || {
start_ssh_agent
}
. "${SSH_ENV}" > /dev/null
fi
export SSH_AGENT_PID
export SSH_AUTH_SOCK
load_key_file
# Pass command line arguments to ssh
/usr/bin/ssh $@