python3 os.system 异步执行_Python执行系统命令的方法 os.system(),os.popen(),commands-程序员宅基地

技术标签: python3 os.system 异步执行  

最近在做那个测试框架的时候发现 Python 的另一个获得系统执行命令的返回值和输出的类。

1.最开始的时候用 Python 学会了 os.system() 。这个方法是拥塞的。

os.system('ping www.baidu.com')

2.通过 os.popen() 返回的是 file read 的对象,对其进行读取 read() 的操作可以看到执行的输出。这个方法是后台执行,不影响后续脚本运行。

output = os.popen('ping www.baidu.com')

print(output.read())

执行结果:

3.通过 commands.getstatusoutput() 一个方法就可以获得到返回值和输出,给一个官方文档的例子:

import commands

(status, output) = commands.getstatusoutput('cat /proc/cpuinfo')

print status, output

之所以给官方文档例子,因为个人执行如下命令,发现无法运行。欢迎知道原因的网友给出解答。

import commands

(status, output) = commands.getstatusoutput('ping www.baidu.com')

print status

print output

打印结果如下:

commands还有另外两个命令

commands.getoutput(cmd)

忽略了status,返回output(output是字符串格式)

commands.getstatus(file)

与上面相反,不多说了

关于commands的说明:

3.1 python3.0之后移除此命令,使用subprocess代替。

3.2 python3.x 使用subprocess创建一个新进程。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39888018/article/details/111022162

智能推荐

Windows下,使用免安装ZIP归档,安装MySQL(5.5)服务器-程序员宅基地

文章浏览阅读1.1k次。1. 解压 MySQL ZIP压缩包 到 安装路径 D:\xapp\apps\,并将解压出来的文件夹重命名为 mysql。2.将MySQL的可执行文件目录 D:\xapp\apps\mysql\bin 加入系统环境变量,然后重启计算机。6.启动Windows命令行 键入 mysql -u root -p ,然后两次回车,进入MySQL控制台。如果通过配置文件 将 数据库目录设置到了别处,则需要将 mysql程序根目录的 data目录中。的内容拷贝到新的目录中,否则MySQL无法启动。

Bootstrap4总结(1)_bootstrap4的好处-程序员宅基地

文章浏览阅读1k次。一.Bootstrap简介1.什么是BootstrapBootstrap 是全球最受欢迎的前端组件库,用于开发响应式布局、移动设备优先的 WEB 项目。Bootstrap4 目前是 Bootstrap 的最新版本,是一套用于 HTML、CSS 和 JS 开发的开源工具集。2.Bootstrap的来源Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML、CSS、JavaScript开发的简洁、直观、强悍的前端开发框架,使得 W._bootstrap4的好处

[C++]LeetCode208 . 实现 Trie (前缀树)-程序员宅基地

文章浏览阅读264次。208 . 实现 Trie (前缀树)题目:实现一个 Trie (前缀树),包含 insert, search, 和 startsWith 这三个操作。示例:Trie trie = new Trie();trie.insert(“apple”);trie.search(“apple”); // 返回 truetrie.search(“app”); // 返回 falsetrie.startsWith(“app”); // 返回 truetrie.insert(“app”);tr

阶乘和(高精度算法)_阶乘和高精度-程序员宅基地

文章浏览阅读6.6k次,点赞6次,收藏12次。(对于自然数N的阶乘,当N比较小时,可以32位整数int范围内准确表示 。例如12!=479001600<2147483647(231-1) 而20!=2432902008176640000<9223372036854775807(263-1)可以在64位整数long long int范围内准确表示 ,但是N取值更大时,N!只能使用浮点数计算,从而产生误差 )题目描述已知正整数N(N..._阶乘和高精度

emwin自定义字库-程序员宅基地

文章浏览阅读638次。一.用到软件  1.FontCvtST.exe  2.U2C.exe  下载地址:https://i.cnblogs.com/Files.aspx二.转换1.新建文本文档,在文本文档中写入所需要用的字或词语,注意:根据用到的字或者词语,每个换行,方便后面使用,如下图2.将文本文档另存为UNICODE格式的新文本文档,备用;并将原文档再另存为UTF-8格式的新文..._st emwin修改字库

vue-cli 设置网页左上角icon图标_vue项目页面左上角小图标怎么修改-程序员宅基地

文章浏览阅读9.8k次,点赞4次,收藏4次。把.ico文件放在根目录下的static文件夹下,然后link标签引入 <link rel="shortcut icon" href="./static/favicon.ico">_vue项目页面左上角小图标怎么修改

随便推点

java file数组 初始化_Java数组的定义,声明,初始化和遍历-程序员宅基地

文章浏览阅读633次。数组的定义数组是相同类型数据的有序集合。数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们。数组的三个基本特点:1. 长度是确定的。数组一旦被创建,它的大小就是不可以改变的。2. 其元素必须是相同类型,不允许出现混合类型。3. 数组类型可以是任何数据类型,包括基本类型和引用类型。数组变量属引用类型,数组也可以看..._java file 数组

十四章上机1_北大青鸟java第十四章上机练习4-程序员宅基地

文章浏览阅读449次。实现客户姓名录入 package kj;public class kehu { String []names=new String[10]; public void addName(String name){ for(int i=0;i

React路由 报错 ‘Switch‘ is not exported from ‘react-router‘.-程序员宅基地

文章浏览阅读722次。配置 路由 报错 'Switch' is not exported from 'react-router'.npm uninstall react-router-domnpm install [email protected]

利用tushare实现选股_tushare 选股-程序员宅基地

文章浏览阅读1.1k次,点赞2次,收藏7次。ID:399899量化交易中,首先要弄好的就是选股。然后在才是买卖策略的制定。不同类型的策略,选股思路也不相同。俗话说得好,不管黑猫白猫,抓到老鼠的就是好猫。一个好的选股策略,往往在量化中是起较为关键的作用的。要实现程序化选股的话,数据又是一个前提。要有数据才能去实现编写程序。数据来源有很多,可以去爬取,也可以去股票交易网站下载。当然也有一些接口可以提供数据。常见的接口有tushare、baostock、akshare在这里我以一个简单的选股案例,为大家介绍一下使用tushare接口使用tush_tushare 选股

Gin框架使用Casbin进行用户权限校验_gin 的权限校验-程序员宅基地

文章浏览阅读3.7k次,点赞2次,收藏10次。以下是测试项目目录一、配置modelconf/casbin_rbac_model.conf# 请求[request_definition]r = sub,obj,act# sub ——> 想要访问资源的用户角色(Subject)——请求实体# obj ——> 访问的资源(Object)# act ——> 访问的方法(Action: get、post...)# 策略(.csv文件p的格式,定义的每一行为policy rule;p,p2为policy rule的名字。)_gin 的权限校验

OKR制定与实施:团队OKR众筹策略_运营okr的制定与实施-程序员宅基地

文章浏览阅读319次。例如,一个团队有20个人,其中有2个员工在共同做A业务,3个员工在共同做B业务,5个员工在共同做C业务,剩下10个员工在共同做D业务,那么可以基于业务相关性将这20个员工分成A业务研讨组、B业务研讨组、C业务研讨组和D业务研讨组,这样,在步骤2目标众筹时,就以A、B、C、D 4个研讨小组为单位,邀请其输出3~5个团队OKR,然后团队主管再基于所有小组贡献的团队OKR进行投票表决,形成团队的OKR。通过这种方式,大大增强了团队成员对团队目标的共识程度,团队目标真正变成了大家共同的目标,而不再只是主管的目标。_运营okr的制定与实施

推荐文章

热门文章

相关标签