使用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中cPickle用法例子分享
Jan 03 Python
python采用django框架实现支付宝即时到帐接口
May 17 Python
python获取指定时间差的时间实例详解
Apr 11 Python
Python探索之ModelForm代码详解
Oct 26 Python
Python实现自定义顺序、排列写入数据到Excel的方法
Apr 23 Python
python实现音乐下载的统计
Jun 20 Python
python构建基础的爬虫教学
Dec 23 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 Python
python实现小球弹跳效果
May 10 Python
基于Python爬虫采集天气网实时信息
Jun 05 Python
django models里数据表插入数据id自增操作
Jul 15 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
Jan 27 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
ionCube 一款类似zend的PHP加密/解密工具
2010/07/25 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
腾讯CMEM的PHP扩展编译安装方法
2015/09/25 PHP
学习php设计模式 php实现模板方法模式
2015/12/08 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
jQuery.validate 常用方法及需要注意的问题
2013/03/20 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮
2015/11/18 Javascript
Sea.JS知识总结
2016/05/05 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
AngularJS实现自定义指令与控制器数据交互的方法示例
2017/06/19 Javascript
JS实现的集合去重,交集,并集,差集功能示例
2018/03/13 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
2018/07/02 Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
2018/07/18 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
2019/06/10 jQuery
微信小程序canvas绘制圆角base64图片的实现
2019/08/18 Javascript
JS实现滑动拼图验证功能完整示例
2020/03/29 Javascript
vue Treeselect下拉树只能选择第N级元素实现代码
2020/08/31 Javascript
JS highcharts实现动态曲线代码示例
2020/10/16 Javascript
Python实现GUI学生信息管理系统
2020/04/05 Python
新手常见6种的python报错及解决方法
2018/03/09 Python
python与caffe改变通道顺序的方法
2018/08/04 Python
python ---lambda匿名函数介绍
2019/03/13 Python
Anaconda+Pycharm环境下的PyTorch配置方法
2020/03/13 Python
使用keras实现Precise, Recall, F1-socre方式
2020/06/15 Python
python3.7调试的实例方法
2020/07/21 Python
局域网标准
2016/09/10 面试题
买卖车协议书
2014/04/21 职场文书
职业规划实施方案
2014/06/10 职场文书
财务管理专业自荐书
2014/09/02 职场文书
出资证明书范本(标准版)
2014/09/24 职场文书
优秀教师事迹材料
2014/12/15 职场文书
介绍信如何写
2015/01/31 职场文书
2015年司法所工作总结
2015/04/27 职场文书
php双向队列实例讲解
2021/11/17 PHP