一个易于使用的libssh包装器,可以通过带有python的ssh在远程服务器上执行命令
pystassh的Python项目详细描述
皮斯塔什
一个易于使用的libssh包装器,通过使用python的ssh在远程服务器上执行命令。
- 作者:Julien Chaumont(https://julienc.io)
- 版本:1.0.1
- 日期:2016-08-02
- 许可证:麻省理工学院
- 网址:https://julienc91.github.io/pystassh/
安装
只需使用pip安装包:
pip install pystassh
pystassh正在使用python 3+和pypypy。
要求
pystassh正在使用libssh工作,在使用之前必须安装库 pystassh。在开发过程中只使用了0.7.3版,但0.5版及更高版本也可以与pystassh一起使用。 有关详细信息,请访问libssh’s official website。 libffi-dev也是cffi模块所必需的。
在debian和ubuntu上:
apt-get install libssh-4 libffi-dev
在软呢帽上:
dnf install libssh libffi-dev
示例
运行简单的命令:
>>>frompystasshimportSession>>>withSession('remote_host.org',username='foo',password='baz')asssh_session:...res=ssh_session.execute('whoami')>>>res.stdout'foo'
处理错误:
>>>frompystasshimportSession>>>withSession('remote_host.org',username='foo',password='baz')asssh_session:...res=ssh_session.execute('whoam')>>>res.stderr'bash: whoam : command not found'
运行多个命令:
>>>frompystasshimportSession>>>withSession('remote_host.org',username='foo',password='baz')asssh_session:...ssh_session.execute('echo "bar" > /tmp/foo')...res=ssh_session.execute('cat /tmp/foo')>>>res.stdout'bar'
使用不带with块的会话:
>>>frompystasshimportSession>>>ssh_session=Session('remote_host.org',username='foo',password='baz')>>>ssh_session.connect()>>>res=ssh_session.execute('whoami')>>>res.stdout'foo'>>>ssh_session.disconnect()