[python]使用pexpect模块进行批量scp】的更多相关文章

#!/usr/bin/env python# -*- coding: utf-8 -*- #wangxiaofei #awcloud自动化测试 import time,osimport threadingimport sys threads = [] username = 'root'passwd = 'www.awcloud.com'ssh_ip = ['10.11.11.4', '10.11.11.5', '10.11.11.6', '10.11.11.7' ] try:     impor…
最近在看<Python自动化运维技术与最佳实战>这本书,学到了一个运维中用到的模块:pexpect 下面是其定义: Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块,它可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互. 从书中我摘取了相关实例并配有注释,用来记录pexpect常用方法: 下面这个实例功能是:以ssh远程登录,登录成功后执行命令‘ls -lh’ import pexpect import sys #通过spawn类启动…
Pexpect 是 Don Libes 的 Expect 语言的一个 Python 实现,是一个用来启动子程序,并使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的 Python 模块. Pexpect 的使用范围很广,可以用来实现与 ssh.ftp .telnet 等程序的自动交互:可以用来自动复制软件安装包并在不同机器自动安装:还可以用来实现软件测试中与命令行交互的自动化.Pexpect仅能在Unix/Linux平台下使用. 1.1 run函数 run(command, timeo…
小插曲 前几节讲了paramiko模块,但是pexpect模块的功能几乎跟paramiko一样,先来分析一下: 1.各自介绍 pexpect是一个通过启动子程序,使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的python模块. paramiko是一个基于python实现的ssh远程安全连接,用于ssh远程执行命令,文件传输等功能的ssh客户端模块. 2.功能区别 pexpect需要借助linux下的ssh命令方式登陆,实现类似scp的拷贝文件功能. paramiko无法实现类似pe…
Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块. Pexpect 可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互.以下所有代码都是在Kali Linux环境下,python 2.7.13 Pexpect中的 pexpect.spawn() 和 pexpect.run() 依赖于Python标准库中的 pty 模块,而pty模块只在POSIX系统中存在,所以在Windows系统上的功能有限. Pexpect模块首先通过生成子应用以代…
Pexpect 是一个用来启动子程序并对其进行自动控制的纯 Python 模块. Pexpect 可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互.继第一部分<探索 Pexpect,第 1 部分:剖析 Pexpect >介绍了 Pexpect 的基础和如何使用后,本文将结合具体实例入手,详细介绍 Pexpect 的用法和在实际应用中的注意点. 概述 通过本系列第一部分<探索 Pexpect,第 1 部分:剖析 Pexpect >(请参阅参考资料)的…
这里列举了大概500个左右的库: !   Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式化的输出. difflib,[Python]标准库,计算文本差异 Levenshtein,快速计算字符串相似度. fuzzywuzzy,字符串模糊匹配. esmre,正则表达式的加速器. shortuuid,一组简洁URL/UUID函数库. ftfy,Unicode文本…
Pexpect模块的安装 下载地址:https://pypi.python.org/pypi/pexpect/ 解压后在目录下运行:python ./setup.py install (必须是root权限,运行前检查文件权限,必须是root权限才能正确安装,否则安装失败) 引入pexpect不报错,即安装成功 [root@bak pexpect-2.3]# python Python 2.7.9 (default, Mar 30 2016, 14:51:28) [GCC 4.4.7 201203…
正则表达式与Python中re模块的使用 最近做了点爬虫,正则表达式使用的非常多,用Python做的话会用到re模块. 本文总结一下正则表达式与re模块的基础与使用. 另外,给大家介绍一个在线测试正则表达式的神器网站:http://tool.chinaz.com/regex 大家可以去这里练习正则表达式 正则表达式 使用场景 关于正则表达式的基本概念这里就不赘述了,大家可以去各种百科里查找它的定义.正则的使用场景主要分为两个: 一是:检测某一段字符串是否符合规则,也就是我们常说的"校验"…
pyinotify模块 pip3 install pyinotify pyinotify提供的事件: 事件标志 事件含义 IN_ACCESS 被监控项目或者被监控目录中的文件被访问,比如一个文件被读取 IN_MODIFY 被监控项目或者被监控目录中的文件被修改 IN_ATTRIB 被监控项目或者被监控目录中的文件的元数据被修改 IN_CLOSE_WRITE 一个打开切等待写入的文件或者目录被关闭 IN_CLOSE_NOWRITE 一个以只读方式打开的文件或者目录被关闭 IN_OPEN 文件或者目…
1.模块初识 在Python中,模块分为两种: (1)标准库 标准库无需安装,只要在使用的时候import就可以使用了 (2)第三方库 第三方库必须下载安装之后才能够引入使用 下面介绍两个基本的模块: (1)os模块 os模块是和操作系统交互的模块,可以调用操作系统的一些命令.其常用的一些方法有: a)  os.system(“操作系统命令”)   返回命令执行状态码   0表示成功 :该方法只执行命令,不保存结果 b)  os.popen(“操作系统命令”)   该命令将结果存到内存中,需要使…
使用python的Paramiko模块登陆SSH paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. python的paramiko模块可以方便的实现ssh登录,并执行命令. 1. paramiko模块安装 1.1安装pycrypto库 下载地址请戳这里:http://download.csdn.net/detail/oatnehc/8825715: pycrypto库的主页在这里:https://www.dlitz.net/sof…
堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.con…
一.Python 操作 Mysql 模块的安装 linux: yum install MySQL-python window: http://files.cnblogs.com/files/wupeiqi/py-mysql-win.zip 二.Python MySQL API 2.1.插入数据 import MySQLdb conn = MySQLdb.connect(host='127.0.0.1',user='root',passwd='1234',db='mydb') cur = conn…
pexpect用来启动子程序,使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的python模块,当然我们可以使用他来做ssh登陆,ssh模块登陆还有一个基于python实现远程连接,用于ssh远程执行命令,文件传输等功能的ssh客户端模块paramiko. 在开发时也经常会使用pexpect模块,所以这里简单介绍一下pexpect. run():直接执行命令返回结果和状态 run里有一个command参数,可以直接写命令然后拿到命令返回的状态和结果. In [2]: import p…
第四章.内置函数与装饰器详解 1.内置函数补充1 注:红色圆圈:必会:  紫红色方框:熟练:   绿色:了解 callable() 判断函数是否可以被调用执行 def f1(): pass f1() f2 = 123 print(callable(f1)) print(callable(f2)) ########################################################################################### # chr(),…
Pexpect 是一个用来启动子程序并对其进行自动控制的 Python 模块. Pexpect 可以用来和像 ssh.ftp.passwd.telnet 等命令行程序进行自动交互.以下所有代码都是在Kali Linux环境下,python 2.7.13 Pexpect中的 pexpect.spawn() 和 pexpect.run() 依赖于Python标准库中的 pty 模块,而pty模块只在POSIX系统中存在,所以在Windows系统上的功能有限. Pexpect模块首先通过生成子应用以代…
python之platform模块 ^_^第三个模块从天而降喽!! 函数列表 platform.system() 获取操作系统类型,windows.linux等 platform.platform() 获取操作系统,Darwin-9.8.0-i386-32bit platform.version() 获取系统版本信息 6.2.0 platform.mac_ver() platform.win32_ver() ('post2008Server', '6.2.9200', '', u'Multipr…
python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd:得到当前工作目录,即当前python脚本工作的目录路径. os.getenv()和os.putenv:分别用来读取和设置环境变量 os.listdir():返回指定目录下的所有文件和目录名 os.remove(fil…
python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传递参数. sys.exit([arg]): 程序中间的退出,arg=0为正常退出. sys.getdefaultencoding(): 获取系统当前编码,一般默认为ascii. sys.setdefaultencoding(): 设置系统默认编码,执行dir(sys)时不会看到这个方法,在解释器中执…
一 安装,导入模块 安装: pip3 install 模块名称 导入: import module from module.xx.xx import xx from module.xx.xx import xx as rename from module.xx.xx import * 二 random random.random random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0 random.randint 用于生成一个指定范围内的整数 random.r…
在C调用Python模块时需要初始化Python解释器,导入模块等,但Python调用C模块却比较简单,下面还是以helloWorld.c 和 main.py 做一说明:   (1)编写C代码,hello.c代码很简单,只是输出“Hello World!”:          (2)将编写的C代码编译成动态链接库的形式,具体命令:     此时在当前目录下就生成了libhello.so 的动态链接库:         (3)在main.py中导入动态链接库,并调用C函数           这里…
今天在看<Beginning Linux Programming>中的进程相关部分,讲到Linux几个进程相关的系统函数: system , exec , fork ,wait . Python的 os 模块实现了对应的函数封装了这些系统调用: os.system , os.exec , os.fork , os.wait,本文和大家分享的就是这部分内容,希望通过本文的分享对大家学习python http://www.maiziedu.com/course/python/有所帮助. 1. os…
python基础——第三方模块 在Python中,安装第三方模块,是通过包管理工具pip完成的.  如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了.  如果你正在使用Windows,请确保安装python时勾选了pip和Add python.exe to Path.  在命令提示符窗口下尝试运行pip,如果Windows提示未找到命令,可以重新运行安装程序添加pip.  注意:Mac或Linux上有可能并存Python 3.x和Python 2.x,因此对应的pip命令是p…
python基础——使用模块 Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env python3 # -*- coding: utf-8 -*- ' a test module ' __author__ = 'Michael Liao' import sys def test(): args = sys.argv if len(args)==1: print('Hello, wo…
在开始之前,首先要说明这几点: 1.在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能有所不同.2.UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间.在中国为UTC+8.DST(Daylight Saving Time)即夏令时.3.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1…
一.引言 之前在写一些小程序的时候想把日志内容打到文件中,所以就自己写了一个logger.py的程序,如下: #!/usr/bin/python # -*- coding=utf-8 -*- import time import os def record_log(names,act,things,price,money): #日志文件名 logfile = 'log.txt' #数据插入的日期 date = time.strftime("%Y-%m-%d %H:%M:%S",time…
python中re模块提供了正则表达式相关操作. 1. 字符串匹配: .    匹配除换行符以外的任意字符 \w 匹配字符或数字或下划线或汉字 \s  匹配任意空白字符 \d 匹配数字 \b 匹配单词的开始或结束 ^  匹配字符串的开始 $   匹配字符串的结束 2.字符串次数匹配: * 重复0次或多次 + 重复1次或多次 ?  重复0次或1次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复n到m次 3.re模块的方法 方法一:match match:从起始位置开始匹配,匹配成功…
使用的是python的pytesser模块,原先想做的是图片中文识别,搞了一段时间了,在中文的识别上还是有很多问题,这里做记录分享. pytesser,OCR in Python using the Tesseract engine from Google.是谷歌OCR开源项目的一个模块,可将图片中的文字转换成文本(主要是英文). 1.pytesser安装 使用设备:win8 64位 PyTesser使用Tesseract OCR引擎,将图像转换到可接受的格式,然后执行tesseract提取出文…
本文以实例形式较为详尽的讲述了Python中optionParser模块的使用方法,对于深入学习Python有很好的借鉴价值.分享给大家供大家参考之用.具体分析如下: 一般来说,Python中有两个内建的模块用于处理命令行参数: 一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数: 另一个是 optparse,它功能强大,而且易于使用,可以方便地生成标准的.符合Unix/Posix 规范的命令行说明. 示例如下: ? 1 2 3 4 5 6 7 8…