我正在使用执行的脚本
eval `ssh-agent`
ssh-add
它会提示您输入 SSH 密码。是否可以从脚本中输入密码?这样做的目的是在我打开 GitBash 时打开与 git repo 的连接,而无需不断输入我的密码。我知道将密码放在脚本中是很糟糕的安全性,但我真的不在乎。我正在做测试。
回答方法在这里:
https://ifireball.wordpress.com/2015/01/12/automatic-loading-of-ssh-keys-from-scripts/
概括:
echo "exec cat" > ap-cat.sh
chmod a+x ap-cat.sh
export DISPLAY=1
echo $MY_SSH_PASS | SSH_ASKPASS=./ap-cat.sh ssh-add ~/.ssh/id_rsa
rm ap-cat.sh
注意:您需要将DISPLAY
环境变量导出为某个值。
如果您要这样做,最好不要在密钥上使用密码。在这种情况下,您甚至不需要使用ssh-agent
. 您可以使用 更改或删除现有密钥中的密码ssh-keygen -p
。