Python 将Os.system结果存储在变量中

Python 将Os.system结果存储在变量中,python,linux,variables,os.system,Python,Linux,Variables,Os.system,大家好,我想知道如何将os.system结果存储在变量中 正如我们所知,它返回0 所以我想知道我应该做什么来存储结果 第二个问题:如何在Linux中获得ip[有人会建议ifconfig],但是ifconfig显示了这么多结果,我只是想知道ip import os from subprocess import * def run_cmd(cmd): p = Popen(cmd, shell=True, stdout=PIPE) output = p.communi

大家好,我想知道如何将
os.system
结果存储在变量中

正如我们所知,它返回0

所以我想知道我应该做什么来存储结果

第二个问题:如何在Linux中获得ip[有人会建议
ifconfig
],但是
ifconfig
显示了这么多结果,我只是想知道
ip

import os
from subprocess import *

def run_cmd(cmd):
        p = Popen(cmd, shell=True, stdout=PIPE)
        output = p.communicate()[0]
        return output

至于第二个问题,请参见

,因为您的第一个问题是python问题,下面是如何使用python在linux中获取IP地址:

import socket
import fcntl
import struct

ifname='eth0'
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
address = socket.inet_ntoa(fcntl.ioctl(
                    s.fileno(),
                    0x8915,  # SIOCGIFADDR
                    struct.pack('256s', ifname[:15])
                    )[20:24])

您好,您可以创建Subprocess.pipe并打印ifconfig的输出 以下是Ref的代码:

import os
import subprocess
from subprocess import *
subprocess.call(["ifconfig","en0”])
p=subprocess.Popen(["ifconfig","en0"],stdout=subprocess.PIPE)
for line in p.stdout:
    print line

每个问题一个问题。我不确定我对“从子流程导入*”Bemmu是否着迷。