检查ssh-agent中是否添加了私有ssh-key

Ree*_*eed 4 linux ssh bash

~/.ssh我有github私钥bitbucket文件。两者都是加密的,所以当我ssh-add ~/.ssh/github必须输入密码时。

我有一个 bash 脚本来自动执行git命令。如果尚未添加github和/或身份,那么我想要它们。bitbucketssh-add

我正在寻找一个类似的函数:

has_identity_been_added ~/.ssh/github
Run Code Online (Sandbox Code Playgroud)

简单地检查是否已添加私有加密密钥文件。

我发现:

  • ssh-add -l为每个身份打印出一串文本...我不知道它是什么,但它不是密钥文件名
  • ssh-add -L打印公钥,我没有将其存储在本地计算机上,因此我不确定如何验证它,而无需再次询问私钥文件的密码。

这两个都打印我给密钥文件指定的名称reed@laptop-x1834(我认为这是自动名称,因为我没有-C在 中指定ssh-keygen,如果没记错的话)。

我不知道从这里该去哪里。我不想依赖ssh-keygen -C "whatever_name".

Phi*_*ppe 5

ssh-add -l打印出添加的钥匙的指纹。

您可以通过以下方式获取公钥的指纹:

ssh-keygen -l -f id_rsa.pub
Run Code Online (Sandbox Code Playgroud)