【发布时间】:2011-02-07 18:52:24
【问题描述】:
我正在尝试使用通过bash 的变量而不是文件作为输入调用ssh-keygen,以获取公钥的指纹。我知道我可以使用临时文件来解决此问题,但出于此问题范围之外的原因,我不想这样做。
这个方法不起作用,因为它说密钥文件无效(它肯定是正确的)
echo $pubkey | ssh-keygen -lf /dev/stdin
这确实工作,但不是使用变量,而是使用文件。
ssh-keygen -lf alpha.pub
这确实工作,但没有使用变量,而是使用重定向文件。
ssh-keygen -lf /dev/stdin < alpha.pub
这不工作,因为我得到一个模棱两可的重定向
ssh-keygen -lf /dev/stdin < $(echo $pubkey)
我希望了解一些关于如何让 ssh-keygen 从具有公钥的变量中读取的信息,如果可能的话,解释一下为什么重定向没有按照我认为他们应该做的那样做。具体为什么| 的行为不同于< 以及为什么第三个示例是ambiguous redirect。我在网上搜索,但许多重定向教程似乎没有回答我的问题。
【问题讨论】:
标签: linux bash variables ssh-keys