python SSH模块登录,远程机执行shell命令实例解析


Posted in Python onJanuary 12, 2018

用python SSH模块登录,并在远程机执行shell命令

(在CentOS 7 环境试验成功, Redhat 系列应该是兼容的。)

先安装必须的模块

# yum install python-dev
# yum install python-devel
# pip install pycrypto
# pip install paramiko
# pip install ssh

这些都成功后, 编写一个Python脚本

# vim remote_run.py
import ssh
# 新建一个ssh客户端对象
myclient = ssh.SSHClient()
# 设置成默认自动接受密钥
myclient.set_missing_host_key_policy(ssh.AutoAddPolicy())
# 连接远程主机
myclient.connect("xxx.coder4.com", port=22, username="xxxx", password="xxxx")
# 在远程机执行shell命令
stdin, stdout, stderr = client.exec_command("ls -l")
# 读返回结果
print stdout.read()
# 在远程机执行python脚本命令
stdin, stdout, stderr = client.exec_command("python /home/test.py")

建立一个SSHClient对象以后,除了执行命令,还可以开启一个sftp的session,用于传输文件、创建文件夹等等。

# 新建 sftp session
sftp = client.open_sftp()
 
# 创建目录
sftp.mkdir('abc')
 
# 从远程主机下载文件,如果失败, 这个可能会抛出异常。
sftp.get('test.sh', '/home/testl.sh')
 
# 上传文件到远程主机,也可能会抛出异常
sftp.put('/home/test.sh', 'test.sh')

总结

以上就是本文关于python SSH模块登录,远程机执行shell命令实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python中list查询及所需时间计算操作示例
Jun 21 Python
Django rest framework工具包简单用法示例
Jul 20 Python
python抓取京东小米8手机配置信息
Nov 13 Python
Pycharm以root权限运行脚本的方法
Jan 19 Python
对Python3 解析html的几种操作方式小结
Feb 16 Python
Django ORM 常用字段与不常用字段汇总
Aug 09 Python
关于Python中的向量相加和numpy中的向量相加效率对比
Aug 26 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
使用Python完成15位18位身份证的互转功能
Nov 06 Python
Python 元组拆包示例(Tuple Unpacking)
Dec 24 Python
Python实现寻找回文数字过程解析
Jun 09 Python
python 利用百度API识别图片文字(多线程版)
Dec 14 Python
python opencv实现任意角度的透视变换实例代码
Jan 12 #Python
Python数字图像处理之霍夫线变换实现详解
Jan 12 #Python
Python实现霍夫圆和椭圆变换代码详解
Jan 12 #Python
微信跳一跳python自动代码解读1.0
Jan 12 #Python
Tornado 多进程实现分析详解
Jan 12 #Python
快速了解Python相对导入
Jan 12 #Python
Python实现翻转数组功能示例
Jan 12 #Python
You might like
php addslashes及其他清除空格的方法是不安全的
2012/01/25 PHP
PHP定时执行任务实现方法详解(Timer)
2015/07/30 PHP
WordPress中注册菜单与调用菜单的方法详解
2015/12/18 PHP
PHP模板引擎Smarty内建函数foreach,foreachelse用法分析
2016/04/11 PHP
php、java、android、ios通用的3des方法(推荐)
2016/09/09 PHP
Javascript日期对象的dateAdd与dateDiff方法
2008/11/18 Javascript
文本框input聚焦失焦样式实现代码
2012/10/12 Javascript
js取消单选按钮选中示例代码
2013/11/14 Javascript
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
JS实现超简单的仿QQ折叠菜单效果
2015/09/21 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
JS实现简单易用的手机端浮动窗口显示效果
2016/09/07 Javascript
jQuery和CSS仿京东仿淘宝列表导航菜单
2017/01/04 Javascript
详谈js中数组(array)和对象(object)的区别
2017/02/27 Javascript
详解Vue中添加过渡效果
2017/03/20 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
AngularJS模态框模板ngDialog的使用详解
2018/05/11 Javascript
NodeJs入门教程之定时器和队列
2019/03/08 NodeJs
vuex管理状态 刷新页面保持不被清空的解决方案
2019/11/11 Javascript
JavaScript实现简易聊天对话框(加滚动条)
2020/02/10 Javascript
python从入门到精通(DAY 1)
2015/12/20 Python
django的ORM模型的实现原理
2019/03/04 Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
2019/04/30 Python
Java文件与类动手动脑实例详解
2019/11/10 Python
python操作cfg配置文件方式
2019/12/22 Python
初学者学习Python好还是Java好
2020/05/26 Python
css3实现动画的三种方式
2020/08/24 HTML / CSS
Spartoo英国:欧洲最大的网上鞋店
2016/09/13 全球购物
乌克兰在线商店的价格比较:Price.ua
2019/07/26 全球购物
家长对学生的评语
2014/04/18 职场文书
节能环保家庭事迹材料
2014/08/27 职场文书
2014领导班子四风剖析对照检查材料思想汇报
2014/09/20 职场文书
银行领导班子四风对照检查材料
2014/09/27 职场文书
2014年法院个人工作总结
2014/12/17 职场文书
单位实习介绍信
2015/05/05 职场文书
法律讲堂观后感
2015/06/11 职场文书