Python如何调用系统命令?方法介绍!

  移动互联网技术的快速发展,为各大行业都提供了发展机遇,在市场的影响之下,Python语言变得更加火爆,渗透到各大领域,现在很多开发工作都会使用到Python,不过进行Python开发搭建框架的时候,往往需要命令进行操作,那么你知道如何用Python调用系统命令吗?小编为大家介绍一下。

  1. os.system()

  这个方法直接调用标准C的system()函数,仅仅在一个子终端运行系统命令,而不能获取执行返回的信息。

  >>> import os

  >>> output = os.system(‘cat /proc/cpuinfo‘)

  processor : 0

  vendor_id : AuthenticAMD

  cpu family : 21

  ... ...

  >>> output # doesn‘t capture output

  0

  2. os.popen()

  这个方法执行命令并返回执行后的信息对象,是通过一个管道文件将结果返回。

  >>> output = os.popen(‘cat /proc/cpuinfo‘)

  >>> output

  >>> print output.read()

  processor : 0

  vendor_id : AuthenticAMD

  cpu family : 21

  ... ...

  >>>

  3. commands模块

  >>> import commands

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

  >>> print output

  processor : 0

  vendor_id : AuthenticAMD

  cpu family : 21

  ... ...

  >>> print status

  0

  注意1:在类unix的系统下使用此方法返回的返回值(status)与脚本或命令执行之后的返回值不等,这是因为调用了os.wait()的缘故,具体原因就得去了解下系统wait()的实现了。需要正确的返回值(status),只需要对返回值进行右移8位操作就可以了。

  注意2:当执行命令的参数或者返回中包含了中文文字,那么建议使用subprocess。

  4. subprocess模块

  该模块是一个功能强大的子进程管理模块,是替换os.system, os.spawn*等方法的一个模块。

  >>> import subprocess

  >>> subprocess.Popen(["ls", "-l"]) # python2.x doesn‘t capture output

  >>> subprocess.run(["ls", "-l"]) # python3.x doesn‘t capture output

  >>> total 68

  drwxrwxr-x 3 xl xl 4096 Feb 8 05:00 com

  drwxr-xr-x 2 xl xl 4096 Jan 21 02:58 Desktop

  drwxr-xr-x 2 xl xl 4096 Jan 21 02:58 Documents

  drwxr-xr-x 2 xl xl 4096 Jan 21 07:44 Downloads

  ... ...

  >>>

(0)

相关推荐

  • python 执行CMD命令

    常用的有2种方法: os.system(),os.popen() os.system() 这是最简单的一种方法,其执行过程中会输出显示cmd命令执行的状态信息. 例如:print os.system( ...

  • [V&N2020 公开赛]CHECKIN

    知识点 反弹shell 文件描述符 WP 进入环境审一下源码: from flask import Flask, requestimport osapp = Flask(__name__)flag_f ...

  • 神器 ffmpeg —— 操作视频,极度舒适

    来源:Python 技术「ID: pythonall」 最近有了一个新任务,需要将赛事视频,拆分成两分钟以内的小段,用于发布到短视频平台上. 本以为是个一次性的工作,结果赛事视频数据巨大,视频文件长短 ...

  • 四种执行python系统命令的方法

    Python中执行系统命令常见的几种方法有 注意:以下实例代码在Python3.5下运行通过. 一.os.system方法 os.system(cmd) 在子终端运行系统命令,可以获取命令执行后的返回 ...

  • Python连接MySQL数据库方法介绍(超详细!手把手项目案例操作)

    作者 | CDA数据分析师 来源 | CDA数据分析研究院 本文涉及到的开发环境: 操作系统 Windows 10 数据库 MySQL 8.0 Python 3.7.2 pip 19.0.3 两种方法 ...

  • 介绍几种 Python 加密源代码的方法

    来源 |州的先生 Python 语法简单,使用方便,我们可以使用它快速地编写程序和构建应用.在编写好程序之后,我们必然要进行程序的分发. 如果我们写的是图形界面程序,可能会打包成相应操作系统平台的二进 ...

  • 灰指甲用白醋还是陈醋泡脚 正确的泡脚方法介绍

    更新时间:2019-03-12 核心提示: 灰指甲是一种常见的疾病,会发生在任何人身上,治疗灰指甲有很多方法,民间也有很多很多偏方可以治疗这种疾病,用白醋泡脚就是常用的方法,只要坚持每天用白醋泡脚,一 ...

  • 男人滑精怎么办 滑精治疗方法介绍

    核心提示: 滑精属于遗精的一种,不过它比遗精严重,遗精不频繁的话属正常现象,但是滑精则属于一种病态症状,因此当男性出现滑精现象时,要引起重视,及时治疗,而治疗滑精的方法有很多,有滑精现象的男性朋友可以 ...

  • 八个常用的网络命令ping、Telnet等详细方法介绍

    一,ping 它是用来检查网络是否通畅或者网络连接速度的命令.它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的 ...

  • Win10正式版怎么卸载IE浏览器?Win10正式版卸载IE浏览器的方法介绍

    首先win10正式版自带Microsoft Edga浏览器,其性能及稳定性远优秀于IE浏览器.其次就是我们可以下载第三方浏览器,因此很有必须在Win10系统中卸载IE浏览器.下面就是在Win10系统中 ...

  • 线缆常用塑胶材质判定方法介绍

    目前市场上线缆用常规塑胶材料的判定,大部分都是采用燃烧的方法,根据是否易燃,燃烧火焰,是否有滴落物,是否延燃,气味等现象来判定,下表为我们统计的常用塑胶材料的燃烧现象,供大家参考交流,谢谢! 基本判定 ...

  • 钎焊的应用及使用方法介绍,硬钎焊与软钎焊的区别

    公差帮APP2020-12-26 10:30:00 钎焊利用熔化温度低于母材的焊材(钎焊材或软钎料:焊膏)进行接合的方法,在母材不熔化的情况下接合.为了与母材拥有良好的接合状态,钎焊材中添加了焊剂. ...

  • 嘟嘟传奇铜域戒指,土域戒指,木域戒指详细获得方法介绍

    嘟嘟传奇铜域戒指,土域戒指,木域戒指这三个特殊戒指玩嘟嘟的朋友都知道,各自带了不同的属性.分别是麻痹,复活,护身.诅咒亡,凤凰飞,守护神是属于特殊戒指.但是嘟嘟传奇官网为了保证游戏正常运行开销.所以选 ...