我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python 调用cmd,不显示cmd黑

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python 调用cmd,不显示cmd黑

python 调用系统命令的方式有很多

1.1   os.system(command)

       在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态。这实际上是使用C标准库函数system()实现的。这个函数在执行command命令时需要重新打开一个终端,并且无法保存command命令的执行结果。

1.2   os.popen(command,mode)

      打开一个与command进程之间的管道。这个函数的返回值是一个文件对象,可以读或者写(由mode决定,mode默认是’r')。如果mode为’r',可以使用此函数的返回值调用read()来获取command命令的执行结果。

1.3   commands.getstatusoutput(command)

  使用os.popen()函数执行command命令并返回一个元组(status,output),分别表示command命令执行的返回状态和执行结果。对command的执行实际上是按照{command;} 2>&1的方式,所以output中包含控制台输出信息或者错误信息。output中不包含尾部的换行符。

 

2.1   subprocess.call(["some_command","some_argument","another_argument_or_path"])

        subprocess.call(command,shell=True)

2.2   subprocess.Popen(command, shell=True)

       如果command不是一个可执行文件,shell=True不可省。

       使用subprocess模块可以创建新的进程,可以与新建进程的输入/输出/错误管道连通,并可以获得新建进程执行的返回状态。使用subprocess模块的目的是替代os.system()、os.popen*()、commands.*等旧的函数或模块。

  最简单的方法是使用class subprocess.Popen(command,shell=True)。Popen类有Popen.stdin,Popen.stdout,Popen.stderr三个有用的属性,可以实现与子进程的通信。


使用os.system和subprocess.call的时候都会有一闪而过的cmd黑框,让人很不爽,使用os.popen后台执行,也可以,能够返回执行的信息

使用subprocess.Popen这个方法很方便,返回tuple类型,对于结果也有好处理的方式

host = ‘192.168.200.64’

ret = subprocess.Popen("ping -n 1 -w 1 %s " % host, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

print(ret)

print(ret.communicate())

<subprocess.Popen object at 0x0000000002857CC0>

(b'\r\n\xd5\xfd\xd4\xda Ping 192.168.50.31 \xbe\xdf\xd3\xd0 32 \xd7\xd6\xbd\xda\xb5\xc4\xca\xfd\xbe\xdd:\r\n\xc7\xeb\xc7\xf3\xb3\xac\xca\xb1\xa1\xa3\r\n\r\n192.168.50.31 \xb5\xc4 Ping \xcd\xb3\xbc\xc6\xd0\xc5\xcf\xa2:\r\n    \xca\xfd\xbe\xdd\xb0\xfc: \xd2\xd1\xb7\xa2\xcb\xcd = 1\xa3\xac\xd2\xd1\xbd\xd3\xca\xd5 = 0\xa3\xac\xb6\xaa\xca\xa7 = 1 (100% \xb6\xaa\xca\xa7)\xa3\xac\r\n', b'')


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python 调用cmd,不显示cmd黑

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python 调用cmd,不显示cmd黑

python 调用系统命令的方式有很多1.1   os.system(command)       在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态。这实际上是使用C标准库函数system()实现的。
2023-01-31

nodejs安装完 cmd不显示

Node.js是一款非常流行的JavaScript运行环境,许多前端开发人员和后端开发人员都会使用它进行开发。但有时,在安装Node.js后,我们可能会遇到一些问题,例如在Windows操作系统上,安装完Node.js后,cmd命令提示符可能不会显示Node.js,这个问题可能会让你感到困惑和无助。本文将针对这个问题进行说明和解决方案。1. 查看环境变量第一步是确保Node.j
2023-05-14

python调用Windows的cmd命

主要介绍两种方式:python的os模块os模块调用CMD命令有两种方式:os.popen(),os.system() 都是用当前进程来调用。os.system是无法获取返回值的。当运行结束后接着往下面执行程序。用法如:os.system(
2023-01-31

java配置完cmd显示不出来如何解决

如果你在配置完Java后,cmd仍然无法显示Java的相关信息,可以尝试以下几种方法来解决问题:1. 检查Java环境变量是否配置正确:打开系统的环境变量设置,确保JAVA_HOME和Path变量都正确指向Java的安装路径。2. 确保Ja
2023-09-16

DEDE列表调用有缩图显示缩图,无缩图则不显示缩图的方法

在list_article.htm模板页里,有文章列表没有图片,但是前面会显示“无缩略图”,就是当没有图片的时候,怎么样去掉这个“无缩略图”的原始默认缩图, 下面我们只需要把原来列表调用标签中
2022-06-12

dedecms内容模型自定义字段在{dede:arclist}中调用不显示的解决方法

今天的项目中遇到一个问题:在内容模型字段中我已经选择了“使字段可以在列表的底层模板中获得”但这一个也只是在DEDE:LIST中调用可以,同时也试过cms的addfieldshttp://www.cppcns.com这
2022-06-12

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录