如何通过程序测试github是否有ssh密钥



我确信我今天和bash相处得很糟糕。

我似乎无法在if语句中正确比较退出代码。

我在这里做错了什么?

echo "Testing to see if GitHub knows who $USER is"
$(ssh -T "git@github.com")
echo $? #just for debugging                                                                                                                                                                                    
# Github exit code of 1 indicates that we can connect and that they do not support shell access.                                                                                                               
# exit code of 255 indicates a ssh error, in this case we assume an invalid key                                                                                                                                
if [ "$?" != "1" ]; then
    echo "Add your SSH key to your Github account"
    echo "* Log into GitHub.com with your Github username and password and visit https://github.com/settings/ssh"
    echo "* Click Add SSH Key"
    echo "* Paste in the following under 'Key':"
    echo "$(cat ~/.ssh/id_rsa.pub)"
    echo "Press Enter when done."
    read
fi

echo $?本身返回0,从而更改$?。拿出你的调试语句。

你也不需要美元左右的报价?或者在你的条件中为1(无论哪种方式对我都有效。)

最新更新