Only use the sentinal if it exists
This commit is contained in:
parent
ec871aedab
commit
847943f807
6
profile
6
profile
@ -48,10 +48,12 @@ function passgen () {
|
||||
tr "$tr1" "$tr2" && echo
|
||||
}
|
||||
|
||||
if [[ -f "$HOME/.ssh-sentinel.sh" ]]; then
|
||||
source "$HOME/.ssh-sentinel.sh"
|
||||
fi
|
||||
|
||||
export EDITOR='nvim'
|
||||
|
||||
alias l="ls -lah"
|
||||
alias ll="ls -lh"
|
||||
alias la="ls -lah"
|
||||
|
||||
source $HOME/.ssh-sentinel.sh
|
||||
|
29
ssh-sentinel.sh
Normal file
29
ssh-sentinel.sh
Normal file
@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
file="$HOME/.ssh-agent"
|
||||
found=0
|
||||
|
||||
which ssh-agent &> /dev/null
|
||||
if (( $? )); then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -e $file ]]; then
|
||||
sockenv=`cat $file | grep SSH_AUTH_SOCK`
|
||||
pidenv=`cat $file | grep SSH_AGENT_PID`
|
||||
sock=`echo "$sockenv" | grep -oP "(?<=\=)/.*$"`
|
||||
pid=`echo "$pidenv" | grep -o "[0-9]*"`
|
||||
proc=`ps ax | grep "^ $pid.*ssh-agent"`
|
||||
|
||||
if [[ -S "$sock" && -O "$sock" && -n "$proc" ]]; then
|
||||
export "$sockenv"
|
||||
export "$pidenv"
|
||||
found=1
|
||||
fi
|
||||
fi
|
||||
|
||||
if (( ! $found )); then
|
||||
export `ssh-agent -s | grep -oP "^.+(?=; export)" | tee "$file"`
|
||||
fi
|
||||
|
||||
chmod 600 "$file"
|
Loading…
Reference in New Issue
Block a user