Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Make .bashrc available to non interactive shells (.sh scripts)
- export BASH_ENV=~/.bashrc
- env=~/.ssh/agent.env
- loadEnv () {
- test -f "$env" && . "$env" >| /dev/null ;
- }
- startAgent() {
- (umask 077; ssh-agent >| "$env")
- . "$env" >| /dev/null ;
- }
- addKeys() {
- keys=`find ~/.ssh -name '*_rsa'`
- if [ "$keys" ]; then
- for i in $keys; do
- local identity=`ssh-keygen -lf $i`
- ssh-add -l | grep -q "$identity" || ssh-add $i
- done
- fi
- }
- loadEnv
- sshState=$(ssh-add -l >| /dev/null 2>&1; echo $?)
- if [ ! "$SSH_AUTH_SOCK" ] || [ $sshState = 2 ]; then
- startAgent
- addKeys
- elif [ "$SSH_AUTH_SOCK" ] && [ $sshState = 1 ]; then
- addKeys
- fi
- unset env
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement