spawn类参数command详解
我们主要来看spawn类它的构造方法参数主要有command,从字面上就是指spawn类的子程序用来执行的子程序,也就是系统所能够执行的相应的命令,对于command这个参数,我们是以字符串的方式给出它所需要运行的子命令,这里包括任何系统可执行的命令,也就是我们在某个系统下来使用spawn类的时候,这个系统带有这个命令,或者说可执行这条命令,那么我们就可以将要执行的命令的字符串的形式,给command这个参数,并且这个命令是可以带参数的,而且参数可以直接放入command,第三,如果我们使用command来执行系统中的命令,它不能够直接支持管道,通配符,标志输入,输出,错误重定向。


下面我们继续看,如果使用command这个参数,首先我们打开虚拟机,进入Python3交互的环境,导入pexpect库,那么我们首先传递给他一个最简单的命令,首先是列出当前路径下的所有文件和目录的命令,用“ls”这条命令,我们要看到这条命令的执行结果,可以调用spawn类的方法来查看,这样我们就可以看到用ls所列出来,也就是当前目录下所有的文件以及文件夹主要包括这些。
在给command这个参数传递命令的时候,还可以给这个命令带上参数,比如将这里面的“ls”命令进行修改一下,修改为带有一个参数,以及它有列出的是哪个目录,然后我们用刚才的同样的方法,来查看这个命令运行的结果。

可以看到它其实就是“ls - l/home/djx’”这条命令,但是它列出的目录,仍然是和刚刚的目录是相同的,并且采用的是列出详细信息的形式,对于这个command参数,它虽然可以接收一条命令或者是带有参数的命令,但是我们刚才有讲到,它是不支持管道等操作符的,那么我们下面来看一下,如果传递给他一个带有管道符的这种命令的时候会出现什么情况?

如图,输入命令,我们给它一个管道命令,表示我们从开始的文件中显示所有的内容,并且搜索这个字符串gree,然后我们用同样的方法来进行查看,可以看到这个命令在执行的时候,出现了错误的提示,这个错误的提示也就是test和grep没有那个文件或目录,所以在这个地方,grep是把这个管道符当成是一个普通的字符,那么也就是认为test和grep作为一个文件名出现的,那么当然它不会找到这个文件并且列出其内容的,那么这个gree也提示没有那个文件或目录,是因为管道符以及通配符等等在command当中是不能够直接支持和使用的,这就是我们要介绍的作为构造参数的第一个command它的使用方法。
原文链接:http://www.maiziedu.com/wiki/library/parameter/
spawn类参数command详解的更多相关文章
- spawn类expect方法详解
本文我们将介绍spawn类的基本方法expect方法,这个方法是用来匹配返回的结果,这个返回的结果是指子程序的返回结果,同时会将匹配的相关信息保存在spawn类的相关属性中. 基本属性包括三个,第一个 ...
- 【转】UML类图与类的关系详解
UML类图与类的关系详解 2011-04-21 来源:网络 在画类图的时候,理清类和类之间的关系是重点.类的关系有泛化(Generalization).实现(Realization).依赖(D ...
- [转]c++类的构造函数详解
c++构造函数的知识在各种c++教材上已有介绍,不过初学者往往不太注意观察和总结其中各种构造函数的特点和用法,故在此我根据自己的c++编程经验总结了一下c++中各种构造函数的特点,并附上例子,希望对初 ...
- Scala 深入浅出实战经典 第63讲:Scala中隐式类代码实战详解
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...
- Scala 深入浅出实战经典 第62讲:Scala中上下文界定内幕中的隐式参数实战详解
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载: 百度云盘:http://pan.baidu.com/s/1c0noOt ...
- UML类图与类的关系详解
摘自:http://www.uml.org.cn/oobject/201104212.asp UML类图与类的关系详解 2011-04-21 来源:网络 在画类图的时候,理清类和类之间的关系是重点.类 ...
- phpcms加载系统类与加载应用类之区别详解
<?php 1. 加载系统类方法load_sys_class($classname, $path = ''", $initialize = 1)系统类文件所在的文件路径:/phpcms ...
- c++类的构造函数详解
c++类的构造函数详解 一. 构造函数是干什么的 class Counter{ public: // 类Counter的构造函数 // 特点:以类名作为函数名,无返回类 ...
- Oracle GoldenGate中HANDLECOLLISIONS参数使用详解
Oracle GoldenGate中HANDLECOLLISIONS参数使用详解 HANDLECOLLISIONS 是一个 replicat 进程参数,主要在 initial load 中使用.在 ...
随机推荐
- .net压缩图片质量(附demo)
private void CompressedImage(string fileName, long quality) { FileStream fs = new FileStream(fileNam ...
- POJ - 2391 最大流
题目链接:http://poj.org/problem?id=2391 今天掉坑多次. 做了几道题,发现从源点出来的边和进入汇点的边都在题目中出来过. POJ真是坑,交G++一直wa,检查代码检查了好 ...
- spring boot原理分析
1.分析spring-boot-starter-parent <parent> <groupId>org.springframework.boot</groupId> ...
- maven项目对于maven远程仓库没有资源的解决办法
下载资源到本地 方法一:dependency scope 是system 类型 <dependency> <groupId>edu.ucar</groupId> & ...
- BZOJ 3065 带插入区间第K小值
题目描述 Description 从前有n只跳蚤排成一行做早操,每只跳蚤都有自己的一个弹跳力a[i].跳蚤国王看着这些跳蚤国欣欣向荣的情景,感到非常高兴.这时跳蚤国王决定理性愉悦一下,查询区间k小值. ...
- 移除array中重复的item
//move the repeated item NSInteger index = [orignalArray count] - 1; for (id o ...
- SDUTOJ 2826 小P寻宝记——好基友一起走
#include<iostream> #include<memory.h> using namespace std; int dp[10010]; int max(int a, ...
- C# Window编程随记——ClickOnce程序部署
关于ClickOnce我们要说的主要有一下两点: 什么是ClickOnce? ClickOnce的使用 一.什么是ClickOnce(来自百度) ClickOnce 是一种部署技术,使 ...
- 移植alsa-lib遇到的问题
移植alsa-lib遇到的问题 linux audio alsa lib VERSIONED_SYMBOLS 这两天移植alsa lib时遇到了一个问题,被困住了好久. 做个记录,以后再被 ...
- TI C66x DSP 四种内存保护问题 -之- 针对CPU訪问外存(DDR3 or MSM)时的内存保护问题 - 举例
在代码维护中遇到过这种问题,CPU訪问了corePac的外部内存空间0x75510C55地址,即CPU向corePac的L2内存控制器发起了对该内存的訪问,然后L2内存控制器将该请求发给corePac ...