广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python 调用cmd,不显示cmd黑
  • 631
分享到

python 调用cmd,不显示cmd黑

pythoncmd 2023-01-31 03:01:15 631人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

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

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'')


--结束END--

本文标题: python 调用cmd,不显示cmd黑

本文链接: https://www.lsjlt.com/news/187322.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • python 调用cmd,不显示cmd黑
    python 调用系统命令的方式有很多1.1   os.system(command)       在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态。这实际上是使用C标准库函数system()实现的。...
    99+
    2023-01-31
    python cmd
  • nodejs安装完 cmd不显示
    Node.js是一款非常流行的JavaScript运行环境,许多前端开发人员和后端开发人员都会使用它进行开发。但有时,在安装Node.js后,我们可能会遇到一些问题,例如在Windows操作系统上,安装完Node.js后,cmd命令提示符可...
    99+
    2023-05-14
  • python调用Windows的cmd命
    主要介绍两种方式:python的os模块os模块调用CMD命令有两种方式:os.popen(),os.system() 都是用当前进程来调用。os.system是无法获取返回值的。当运行结束后接着往下面执行程序。用法如:os.system...
    99+
    2023-01-31
    python Windows cmd
  • java配置完cmd显示不出来如何解决
    如果你在配置完Java后,cmd仍然无法显示Java的相关信息,可以尝试以下几种方法来解决问题:1. 检查Java环境变量是否配置正...
    99+
    2023-09-16
    java
  • 如何解决cmd显示node不是内部命令的问题
    这篇文章主要介绍了如何解决cmd显示node不是内部命令的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 c...
    99+
    2022-10-19
    cmd node
  • MySQL在cmd和python下的使用示例
    这篇文章主要介绍MySQL在cmd和python下的使用示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!环境配置1:安装mysql,环境变量添加mysql的bin目录环境配置2:p...
    99+
    2022-10-18
    python mysql cmd
  • 在CMD窗口中调用python函数的实现
    目录1.问题背景2.解决方案2.1.Python文件中只包含一个函数,而且不需要输入任何参数2.2.Python文件中有多个函数,调用其中某一个,并且输入参数1.问题背景 针对目前愈...
    99+
    2022-11-11
    CMD调用python python调用CMD
  • 使用命令提示符(CMD)进入Python的步骤
    使用命令提示符(CMD)进入Python的步骤 Python是一种广泛使用的高级编程语言,它具有简单易学、可扩展性强的特点,因此在开发和科学计算领域广受欢迎。如果你想在Windows操作系统上运行Py...
    99+
    2023-10-21
    python 开发语言 Python
  • DEDE列表调用有缩图显示缩图,无缩图则不显示缩图的方法
    在list_article.htm模板页里,有文章列表没有图片,但是前面会显示“无缩略图”,就是当没有图片的时候,怎么样去掉这个“无缩略图”的原始默认缩图, 下面我们只需要...
    99+
    2022-06-12
    DEDE 缩图
  • dedecms内容模型自定义字段在{dede:arclist}中调用不显示的解决方法
    今天的项目中遇到一个问题:在内容模型字段中我已经选择了“使字段可以在列表的底层模板中获得”但这一个也只是在DEDE:LIST中调用可以,同时也试过cms的addfields这个属性,也没起作用。像...
    99+
    2022-06-12
    dedecms 自定义字段 不显示
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作