libssh c库的包装程序。
ssh-python的Python项目详细描述
libsshc库的绑定。
安装
当前仅提供源安装。要跟随的双轮车。
要从源安装,请运行以下命令:
pip install ssh-python
项目处于测试状态。
先决条件
- openssl或gcrypt库和开发头
- 可选Zlib库和开发头用于压缩
Libssh源代码嵌入到此项目中,并将在按照上述说明触发安装时生成。不支持libssh的版本,而不是嵌入在此项目中的版本。
快速启动
from__future__importprint_functionimportosimportpwdfromssh.sessionimportSessionfromsshimportoptionsUSERNAME=pwd.getpwuid(os.geteuid()).pw_nameHOST='localhost's=Session()s.options_set(options.HOST,HOST)s.connect()# Authenticate with agents.userauth_agent(USERNAME)chan=s.channel_new()chan.open_session()chan.request_exec('echo me')size,data=chan.read()whilesize>0:print(data.strip())size,data=chan.read()chan.close()
输出:
me
功能
库使用基于Cython的本机代码扩展作为libssh的包装器。
- 线程安全-尽可能释放gil
- 非常低的开销薄包装
- 面向对象-当对象被python垃圾收集时,自动安全地释放内存
- 在适用的情况下使用python语义,例如上下文管理器和迭代器支持打开和读取通道和sftp文件句柄
- 作为python异常引发错误