python运行cmd命令行的3种方法总结
作者:幸福的达哥 发布时间:2023-07-15 18:40:49
标签:Python,运行,cmd命令行
1.执行cmd命令,不显示执行过程中弹出的黑框
def run_cmd( cmd_str='', echo_print=1):
"""
执行cmd命令,不显示执行过程中弹出的黑框
备注:subprocess.run()函数会将本来打印到cmd上的内容打印到python执行界面上,所以避免了出现cmd弹出框的问题
:param cmd_str: 执行的cmd命令
:return:
"""
from subprocess import run
if echo_print == 1:
print('\n执行cmd指令="{}"'.format(cmd_str))
run(cmd_str, shell=True)
2.执行cmd命令,并得到执行后的返回值,python调试界面输出返回值
def run_cmd_Popen_fileno(cmd_string):
"""
执行cmd命令,并得到执行后的返回值,python调试界面输出返回值
:param cmd_string: cmd命令,如:'adb devices'
:return:
"""
import subprocess
print('运行cmd指令:{}'.format(cmd_string))
return subprocess.Popen(cmd_string, shell=True, stdout=None, stderr=None).wait()
3.执行cmd命令,并得到执行后的返回值,python调试界面不输出返回值
def run_cmd_Popen_PIPE(cmd_string):
"""
执行cmd命令,并得到执行后的返回值,python调试界面不输出返回值
:param cmd_string: cmd命令,如:'adb devices"'
:return:
"""
import subprocess
print('运行cmd指令:{}'.format(cmd_string))
return subprocess.Popen(cmd_string, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, encoding='gbk').communicate()[0]
调用方法
if __name__ == '__main__':
run_cmd_run('adb devices')
run_cmd_Popen_fileno('adb devices')
run_cmd_Popen_PIPE('adb devices')
执行结果
执行cmd指令="adb devices"
List of devices attached
3356caad device运行cmd指令:adb devices
List of devices attached
3356caad device运行cmd指令:adb devices
补充:python调用cmd进行输入输出
由于程序需要用java和python混用,所以可以取巧,就是在python中调用cmd,在cmd中执行java
所以,进行了一下测试。完美运行
import os
with open("text1.txt","w",encoding="utf8") as file1:
mystr = os.popen("ipconfig") # popen与system可以执行指令,popen可以接受返回对象
mystr = mystr.read() # 读取输出
file1.write(mystr) #写入文件
来源:https://blog.csdn.net/zh6526157/article/details/121775954


猜你喜欢
- 获取一组href元素属性的值lst = driver.find_elements_by_class_name("ib-it-tex
- 几天前,想把上个月校园招聘的餐旅费报销一下。结果在公司内网的报销系统折腾了三个半小时才搞定。看看自己报销的金额:802块。觉得挺无奈,花了三
- 在Flash中我们用蒙板加上一些简单的脚本便可实现一个动态的图片放大镜。现在我们只用JavaScript结合CSS语言也可以轻易做出这个效果
- 前言开发过程中有时需要使用路径数据,虽然python有自己的svg或其他矢量库,但这里只是出于实验的目的,没必要深入研究,所以采用一些简单的
- 背景:我们有一个用go做的项目,其中用到了zmq4进行通信,一个简单的rpc过程,早期远端是使用一个map去做ip和具体socket的映射。
- 命名空间:using System.IO;写文本文件StreamWriter sw=File.CreateText("c:\\te
- 做沙盒的时候遇到一个小问题——在IE9里面竟然抓不到事件的keyCode:element.addEventListener('key
- @property作用:python的@property是python的一种装饰器,是用来修饰方法的。我们可以使用@property装饰器来
- 一,问题因为我想在我的服务器上部署两个vue项目,但是vue打包后默认的项目名是dist,这样子就跟我上一个vue项目冲突了。因此查了一下资
- golang常用库:gorilla/mux-http路由库使用golang常用库:配置文件解析库-viper使用golang常用库:操作数据
- 矩阵相乘需要前面矩阵的行数与后面矩阵的列数相同方可相乘。第一步,先将前面矩阵的每一行分别与后面矩阵的列相乘,作为结果矩阵的行列;第二步算出结
- Go GRPC 入门1,安装包grpcgolang-grpc 包提供了 gRPC 相关的代码库,通过这个库我们可以创建 gRPC 服务或客户
- 用QQ聊过天的朋友都对它的自动隐藏窗口功能爱不释手,它可以使窗口显得清爽整洁而且富有动感,笔者的几个朋友都想在自己的网页中加入类似的东东,经
- 有个朋友要求帮忙绘制堆叠柱状图,查阅了一些文档之后也算是完成了,只是一个小demo,下面我就记录一下。1.什么是堆叠柱状图与并排显示分类的分
- 使用原生SQL语句进行对数据库操作,可完成数据库表的建立和删除,及数据表内容的增删改查操作等。其可操作性很强,如可以直接使用“show da
- 在写 Node.js 应用程序的时候,你确实可以把所有代码放在巨大原 index.js 文件中,不在乎你的应用程序会变得多大多复杂。Node
- python pyinstaller pyqt4 打包 QWindows最近在做课设,用pyqt设计界面。然后用pyinstaller打包程
- 如果我们想对一个表的每一行做出比较复杂的操作,大多会想到用游标,本文中,我们将换一种思路,用SQL Server 2005中的新函数ROW_
- 写在前面的话:此篇还是asp相关的,相信玩ASP的都有这个感觉,当数据有5万多条时-------just like音乐网,要调用最新的10条
- 1、在命令行里停止MySQL服务:net stop mysql2、修改mysql安装目录下的my,ini,将default-ch