使用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实现多线程下载文件的代码实例
Jun 01 Python
在Python的列表中利用remove()方法删除元素的教程
May 21 Python
python获取代码运行时间的实例代码
Jun 11 Python
如何通过雪花算法用Python实现一个简单的发号器
Jul 03 Python
python实现静态服务器
Sep 05 Python
python创建ArcGIS shape文件的实现
Dec 06 Python
pytorch模型预测结果与ndarray互转方式
Jan 15 Python
解决Jupyter无法导入已安装的 module问题
Apr 17 Python
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
May 07 Python
tensorflow 20:搭网络,导出模型,运行模型的实例
May 26 Python
Django中的DateTimeField和DateField实现
Feb 24 Python
Python干货实战之八音符酱小游戏全过程详解
Oct 24 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 Pear 安装及使用
2009/03/19 PHP
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
检查php文件中是否含有bom的函数
2012/05/31 PHP
php实现的一个简单json rpc框架实例
2015/03/30 PHP
PHP使用SOAP调用API操作示例
2018/12/25 PHP
php+redis实现消息队列功能示例
2019/09/19 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
2020/01/23 PHP
关于Javascript 的 prototype问题。
2007/01/03 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
移动端翻页插件dropload.js(支持Zepto和jQuery)
2016/07/27 Javascript
nodejs+websocket实时聊天系统改进版
2017/05/18 NodeJs
jQuery实现表单动态添加与删除数据操作示例
2018/07/03 jQuery
angular 用Observable实现异步调用的方法
2018/12/27 Javascript
javascript+css实现进度条效果
2020/03/25 Javascript
详解ES6实现类的私有变量的几种写法
2021/02/10 Javascript
用Python脚本生成Android SALT扰码的方法
2013/09/18 Python
Python函数返回值实例分析
2015/06/08 Python
Python函数中的函数(闭包)用法实例
2016/03/15 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
用PyInstaller把Python代码打包成单个独立的exe可执行文件
2018/05/26 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
带你认识Django
2019/01/15 Python
详解python执行shell脚本创建用户及相关操作
2019/04/11 Python
Python利用pandas处理Excel数据的应用详解
2019/06/18 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
2019/08/09 Python
对Django中内置的User模型实例详解
2019/08/16 Python
Python unittest单元测试框架实现参数化
2020/04/29 Python
python使用matplotlib绘制折线图的示例代码
2020/09/22 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
敏捷开发的主要原则都有哪些
2015/04/26 面试题
毕业生自我推荐
2013/11/04 职场文书
带薪年假请假条
2014/02/04 职场文书
经理管理专业毕业自荐书范文
2014/02/12 职场文书
销售经理工作检讨书
2015/02/19 职场文书
千万级用户系统SQL调优实战分享
2022/03/03 MySQL