从shell脚本运行ssh-agent

Modified on: Sun, 19 May 2019 07:40:02 +0800

我正在尝试创建一个shell脚本,除其他外,它启动ssh-agent并向代理添加私钥。例如:

#!/bin/bash # ... ssh-agent $SHELL ssh-add /path/to/key # ...

这个的问题是ssh-agent显然启动了$ SHELL的另一个实例(在我的情况下,bash),并且从脚本的角度来看它执行了所有内容并且ssh-add和它下面的任何内容都不会运行。

如何从我的shell脚本运行ssh-agent并让它在命令列表中继续运行?

作者:Dan

最佳答案

ssh-agent应该启动会话,当它完成时,用户会话结束。因此,ssh-agent之后的任何命令都可能在注销后执行。

你想要的是一个session-script,它包含你的会话命令:

#!/bin/bash ssh-add /path/to/key bash -i # or other session starter

然后启动ssh-agent session-script


相关问答

添加新评论