windows linux 使用python执行系统命令并将结果保存到变量

时间:2022-03-10 09:45:39

最近需要用到os.system 发现不能赋值到变量

后查有更新的模块,如下: 
os.system 
os.spawn* 
os.popen* 
popen2.* 
commands.*

重新使用content=os.popen(‘help’).read() 
就能获取到了

import pyodbc
import sys
import os
import commands

#python conn sql server2008R2
conn = pyodbc.connect(
driver='{sql server native client 10.0}',
server='10.34.1.30',
database='LogFeedback',
uid='sa',
pwd='ahswyc'
)

cursor = conn.cursor()

#参考调试,入库测试语句
#cursor.execute("insert into iisEstablishConnCounts(timestramp,iisHostIp,connCounts) values('2017/07/06:22:10','10.34.1.23',90)")

#sql入库字段基于变量
#80端口连接数统计
#netstat -na -p tcp| findstr 80 | find /C "ESTABLISH"

#cmd="netstat -na -p tcp| findstr 80 | find /C \"ESTABLISH\""
#(status,output) = commands.getstatusoutput("%s" % cmd)

#python执行调用系统命令并将结果保存到变量
#注意在linux下用python执行系统命令并将结果保存到变量与windows不同如下语句
#cmd="netstat -na -p tcp| findstr 80 | find /C \"ESTABLISH\""
#(status,output) = commands.getstatusoutput("%s" % cmd)

portCounts=os.popen("netstat -na -p tcp| findstr 80 | find /C \"ESTABLISH\"").read()

conn.commit()