使用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 相关文章推荐
python之wxPython应用实例
Sep 28 Python
Python中的字符串查找操作方法总结
Jun 27 Python
详解Python中的文件操作
Aug 28 Python
详解pyenv下使用python matplotlib模块的问题解决
Nov 29 Python
python下载微信公众号相关文章
Feb 26 Python
python2和python3实现在图片上加汉字的方法
Aug 22 Python
解决python多行注释引发缩进错误的问题
Aug 23 Python
Python迭代器iterator生成器generator使用解析
Oct 24 Python
Python CategoricalDtype自定义排序实现原理解析
Sep 11 Python
django跳转页面传参的实现
Sep 17 Python
Python环境配置实现pip加速过程解析
Nov 27 Python
Python爬虫分析微博热搜关键词的实现代码
Feb 22 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 判断常量,变量和函数是否存在
2009/04/26 PHP
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
获取URL文件名后缀
2013/10/24 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
2014/08/16 PHP
PHP实现的oracle分页函数实例
2016/01/25 PHP
Js实现滚动变色的文字效果
2014/06/16 Javascript
javascript结合CSS实现苹果开关按钮特效
2015/04/07 Javascript
JS提示:Uncaught SyntaxError: Unexpected token ILLEGAL错误的解决方法
2016/08/19 Javascript
AngularJs Modules详解及示例代码
2016/09/01 Javascript
AngularJS入门教程之Helloworld示例
2016/12/25 Javascript
jquery与js实现全选功能的区别
2017/06/11 jQuery
BootStrap Select清除选中的状态恢复默认状态
2017/06/20 Javascript
vue中mint-ui的使用方法
2018/04/04 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
vue+iview动态渲染表格详解
2019/03/19 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
jquery实现简单自动轮播图效果
2020/07/29 jQuery
如何实现小程序与小程序之间的跳转
2020/11/04 Javascript
答题辅助python代码实现
2018/01/16 Python
python实现SOM算法
2018/02/23 Python
Python实现找出数组中第2大数字的方法示例
2018/03/26 Python
django 快速启动数据库客户端程序的方法示例
2019/08/16 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
如何使用Python自动生成报表并以邮件发送
2020/10/15 Python
matplotlib部件之套索Lasso的使用
2021/02/24 Python
CHARLES & KEITH英国官网:新加坡时尚品牌
2018/07/04 全球购物
解除劳动关系协议书2篇
2014/11/28 职场文书
工作检讨书范文
2015/01/23 职场文书
学校捐款活动总结
2015/05/09 职场文书
工作会议简报
2015/07/20 职场文书
采购员工作总结范文
2015/08/12 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
css3实现背景图片颜色修改的多种方式
2021/04/13 HTML / CSS
分析设计模式之模板方法Java实现
2021/06/23 Java/Android
Nginx+Tomcat负载均衡多实例详解
2022/04/11 Servers