使用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设计模式编程中的访问者与观察者模式
Jan 26 Python
详解Python中的动态属性和特性
Apr 07 Python
利用Python写一个爬妹子的爬虫
Jun 08 Python
python实现定时发送qq消息
Jan 18 Python
使用python实现希尔、计数、基数基础排序的代码
Dec 25 Python
Python for循环搭配else常见问题解决
Feb 11 Python
pandas数据拼接的实现示例
Apr 16 Python
Python 解析库json及jsonpath pickle的实现
Aug 17 Python
Python使用pickle进行序列化和反序列化的示例代码
Sep 22 Python
python实现文件分片上传的接口自动化
Nov 19 Python
Python采集股票数据并制作可视化柱状图
Apr 04 Python
Python如何用re模块实现简易tokenizer
May 02 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
一道求$b相对于$a的相对路径的php代码
2010/08/08 PHP
PHP获取网页标题的3种实现方法代码实例
2014/04/11 PHP
php无限极分类递归排序实现方法
2014/11/11 PHP
Yii框架数据模型的验证规则rules()被执行的方法
2016/12/02 PHP
ThinkPHP中create()方法自动验证实例
2017/04/26 PHP
php+Ajax无刷新验证用户名操作实例详解
2019/03/04 PHP
mouse_on_title.js
2006/08/25 Javascript
Javascript 变量作用域 两个可能会被忽略的小特性
2010/03/23 Javascript
基于jquery实现的鼠标拖拽元素复制并写入效果
2011/08/23 Javascript
js数组的操作详解
2013/03/27 Javascript
Jquery实现页面加载时弹出对话框代码
2013/04/19 Javascript
jquery之超简单的div显示和隐藏特效demo(分享)
2013/07/09 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
用canvas 实现个图片三角化(LOW POLY)效果
2016/02/18 Javascript
jquery 判断selection range 是否在容器中的简单实例
2016/08/02 Javascript
canvas实现简易的圆环进度条效果
2017/02/28 Javascript
Bootstrap进度条与AJAX后端数据传递结合使用实例详解
2017/04/23 Javascript
JS使用贪心算法解决找零问题示例
2017/11/27 Javascript
解决Vue-cli npm run build生产环境打包,本地不能打开的问题
2018/09/20 Javascript
javascript实现点击星星小游戏
2019/12/24 Javascript
利用H5api实现时钟的绘制(javascript)
2020/09/13 Javascript
解决antd的Form组件setFieldsValue的警告问题
2020/10/29 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
python通过colorama模块在控制台输出彩色文字的方法
2015/03/19 Python
如何实现删除numpy.array中的行或列
2018/05/08 Python
opencv python 2D直方图的示例代码
2018/07/20 Python
python中的单引号双引号区别知识点总结
2019/06/23 Python
简单了解python关系(比较)运算符
2019/07/08 Python
Django restframework 框架认证、权限、限流用法示例
2019/12/21 Python
Python图像处理库PIL的ImageFilter模块使用介绍
2020/02/26 Python
Python页面加载的等待方式总结
2021/02/28 Python
爱国主义教育活动总结
2014/05/07 职场文书
运动会演讲稿
2014/05/07 职场文书
分居协议书范本
2014/11/03 职场文书
2016大学生社会实践单位评语
2015/12/01 职场文书
python manim实现排序算法动画示例
2022/08/14 Python