我正在寻找相当于Python的
eval $(ssh-agent)
,它将启动ssh-agent并在脚本完成运行后保持运行状态。
我在谷歌上没有找到任何有用的东西。
我试图使用它https://pypi.python.org/pypi/ssh-agent-setup/0.2.0,但它对我不起作用。查看 https://github.com/haarcuba/ssh-agent-setup 上的代码,我发现这很容易修复。我分叉并发出拉取请求https://github.com/haarcuba/ssh-agent-setup/pull/2。
对于有兴趣使用 ssh-agent-setup python 模块的人,可以按照说明进行操作 https://github.com/haarcuba/ssh-agent-setup#ssh-agent-setup。
如果您得到:
ssh_agent_setup.setup()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.6/site-packages/ssh_agent_setup/__init__.py", line 34, in setup
_setupAgent()
File "/usr/local/lib/python3.6/site-packages/ssh_agent_setup/__init__.py", line 18, in _setupAgent
raise Exception( 'Could not parse ssh-agent output. It was: {}'.format( process.stdout ) )
Exception: Could not parse ssh-agent output. It was: setenv SSH_AUTH_SOCK /tmp/ssh-thoTQTiOTR0y/agent.47524;
setenv SSH_AGENT_PID 47797;
echo Agent pid 47797;
如果有人想实现类似的东西,代码很容易理解https://github.com/haarcuba/ssh-agent-setup/blob/master/ssh_agent_setup/__init__.py.
阅读代码,我现在明白了如何在python中启动ssh-agent。