使用python的pexpect模块,实现远程免密登录的示例


Posted in Python onFebruary 14, 2019

说明

当我们需要用脚本实现,远程登录或者远程操作的时候,都要去解决如何自动输入密码的问题,一般来说有3种实现方式:

1).配置公钥私钥

2).使用shell下的命令,expect

3).使用python的pexpect模块

下面介绍的代码,是使用python的pexpect模块实现的:

代码

import os
import sys
import pexpect
import datetime

#获取昨天的日期
date_yes = (datetime.date.today()-datetime.timedelta(days=1)).strftime('%Y%m%d')
print date_yes
#远程拷贝名利
cmd="scp /home/lsh/xxx/huike/data/" + date_yes + " data@x.x.x.x:/home/inf/xxx/huike/data/" + date_yes
print cmd
#发送命令,开始执行
child = pexpect.spawn(cmd)
#匹配需要输入密码的状态
child.expect('.ssword:')
#向系统发送密码
child.sendline('123456789')
#结束子进程,不加的话,可能会报错
child.expect(pexpect.EOF)

以上这篇使用python的pexpect模块,实现远程免密登录的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
node.js获取参数的常用方法(总结)
May 29 Python
Python数据分析之如何利用pandas查询数据示例代码
Sep 01 Python
Python中的默认参数实例分析
Jan 29 Python
详解关于Django中ORM数据库迁移的配置
Oct 08 Python
Python绘制热力图示例
Sep 27 Python
python groupby 函数 as_index详解
Dec 16 Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
Feb 29 Python
浅谈Python线程的同步互斥与死锁
Mar 22 Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 Python
Python基于jieba, wordcloud库生成中文词云
May 13 Python
Python如何实现机器人聊天
Sep 10 Python
python调用jenkinsAPI构建jenkins,并传递参数的示例
Dec 09 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
Feb 14 #Python
Python模拟百度自动输入搜索功能的实例
Feb 14 #Python
python 处理telnet返回的More,以及get想要的那个参数方法
Feb 14 #Python
python 多个参数不为空校验方法
Feb 14 #Python
python pexpect ssh 远程登录服务器的方法
Feb 14 #Python
Python之时间和日期使用小结
Feb 14 #Python
对Python Pexpect 模块的使用说明详解
Feb 14 #Python
You might like
PHP的伪随机数与真随机数详解
2015/05/27 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
Autocomplete Textbox Example javascript实现自动完成成功
2007/08/17 Javascript
一个javascript参数的小问题
2008/03/02 Javascript
Prototype 学习 Prototype对象
2009/07/12 Javascript
高性能web开发 如何加载JS,JS应该放在什么位置?
2010/05/14 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
jqGrid jQuery 表格插件测试代码
2011/08/23 Javascript
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
Javascript基础教程之if条件语句
2015/01/18 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
jquery实现图片上传前本地预览功能
2016/05/10 Javascript
星期几的不同脚本写法(推荐)
2016/06/01 Javascript
vue做网页开场视频的实例代码
2017/10/20 Javascript
详解使用VueJS开发项目中的兼容问题
2018/08/02 Javascript
微信小程序判断页面是否从其他页面返回的实例代码
2019/07/03 Javascript
vue开发拖拽进度条滑动组件
2019/09/21 Javascript
vue实现路由懒加载的3种方法示例
2020/09/01 Javascript
微信小程序实现锚点跳转
2020/11/23 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
Python list操作用法总结
2015/11/10 Python
用python找出那些被“标记”的照片
2017/04/20 Python
用Anaconda安装本地python包的方法及路径问题(图文)
2019/07/16 Python
python numpy 反转 reverse示例
2019/12/04 Python
使用Python paramiko模块利用多线程实现ssh并发执行操作
2019/12/05 Python
如何用Matplotlib 画三维图的示例代码
2020/07/28 Python
python打包生成so文件的实现
2020/10/30 Python
Farah官方网站:男士服装及配件
2019/11/01 全球购物
高三英语教学反思
2014/01/13 职场文书
简单租房协议书
2014/04/09 职场文书
上课随便讲话检讨书
2014/09/12 职场文书
团日活动总结格式
2015/05/11 职场文书
科技馆观后感
2015/06/08 职场文书
婚礼上证婚人致辞
2015/07/28 职场文书
Python使用MapReduce进行简单的销售统计
2022/04/22 Python