ssh-add 无法识别正在运行的 ssh-agent

ssh-add 无法识别正在运行的 ssh-agent
ps_out=`ps -U "$USER" | grep ssh-agent | grep -v 'grep' | grep -v $0`
result=$(echo $ps_out | grep ssh-agent)
if [ "$result" != "" ];then
    echo "ssh-agent is running"
else
    echo "ssh-agent is not running, starting now"
    eval "$(ssh-agent -s)"
fi

ssh-add $FILE

问题是,即使“ssh-agent 正在运行”,ssh-add有时也无法通过消息连接Could not open a connection to your authentication agent

如何改进脚本,如果“ssh-agent 正在运行”但未连接,它应该尝试“重新连接”到现有的 ssh-agent 套接字(如果可能的话),否则终止现有的 ssh-agent 并创建一个新的。

为什么?否则最终可能会产生一堆ssh-agent无用的东西。

相关内容