libssh c库的包装程序。

ssh-python的Python项目详细描述


libsshc库的绑定。

LicenseLatest Version

安装

当前仅提供源安装。要跟随的双轮车。

要从源安装,请运行以下命令:

pip install ssh-python

项目处于测试状态。

先决条件

  • opensslgcrypt库和开发头
  • 可选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异常引发错误

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
算法如何选择合适的java数据结构来建模1n关系映射?   java有办法发现ReST API的所有端点吗?   java JFileChooser和Jbutton错误   在java中解析起始相同但结尾不同的字符串   java读取具有多行的文件并将其输出到JLabel   日期在java中将时间戳转换为特定格式(年、月、周、天、时间、小时、分钟和秒)   java Jsoup getElementsByClass返回空值   java无法生成一个范围内的所有Kaprekar数   java Spring社交Facebook:“OAuth2'state'参数不匹配”   java如何在JTextField中移动光标位置   scala AWSJAVASDK:解压缩大小必须小于262144000字节   java如何使用多个cron设置时间表,以便在spring boot中执行一项任务   java从句子中提取动词   java如何动态添加布局及其子级