python 运行cmd系统命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 运行cmd系统命令相关的知识,希望对你有一定的参考价值。
参考技术A eg:os.system('ls')这个会直接给出结果,但是没有办法进行进一步的保存和处理
2.os.popen(cmd)
eg:str = os.popen("ls").read()
a = str.split("\n")
会得到['1.ini',
'XXX.txt',
'XXX.txt',
'androidStudioProjects']
3.使用subprocess模块
可以创建新的进程,可以与新建进程的输入/输出/错误管道连通,并可以获得新建进程执行的返回状态。
import subprocess
subprocess.call (["cmd", "arg1", "arg2"],shell=True)
#会直接打印出结果。
2、subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
# shell设为true,程序将通过shell来执行,如果command不是一个可执行文件,shell=True是必须的
# stdin, stdout, stderr分别表示程序的标准输入、输出、错误句柄。他们可以是PIPE,文件描述符或文件对象,也可以设置为None,表示从父进程继承。
# subprocess.PIPE实际上为文本流提供一个缓存区。
shell=True意思是shell下执行command
3. 使用模块 commands模块
import commands
python 的os.system问题?
使用如下命令:
import os
os.system('cmd')
反馈是:'cmd' 不是内部或外部命令,也不是可运行的程序或批处理文件。这是怎么回事?请哪位大神指教一下。
你可以这样操作(windows系统):
cmd = "dir"
os.system(cmd)
等价于:os.system("dir") 参考技术A
os.system(cmd),你试试不加‘ ’
------------------分隔线----------------------
刚才回复了,不知道为什么没回复出去,应该还要审核。
由于我之前也没亲自实验,亲自上手一番cmd是泛指cmd命令。
比如输入os.systyem("dir")
-------------------------------------------
再次尴尬,由于你回复说“改成双引号,也不行”,所以我也没试os.system("cmd"),但是我在pycharm上试了一下,好像也可以
大神,我取消了冒号也不行啊。改成双引号,也不行。
追答尴尬了,因为我也是刚从百度搜的,自己没试。
刚才我自己试了下,这个cmd,应该并不是真的是“cmd”三个字,它是代表cmd命令。
就比如说os.system("dir")

请查看最新回复。
以上是关于python 运行cmd系统命令的主要内容,如果未能解决你的问题,请参考以下文章