我正在考虑收集服务器数据,并且在这些服务器中预装了 Python 2.6。
现在我想知道是否有Python库对应于Ruby的“factor”,而不是facter的Python“binding”。

我用谷歌搜索但找不到任何。有没有人对此有任何想法?

最佳答案

我看不出你为什么不使用 facter 本身的任何理由。输出格式很容易从 python 脚本中使用。

import subprocess
import pprint

def facter2dict( lines ):
        res = {}
        for line in lines:
                k, v = line.split(' => ')
                res[k] = v
        return res

def facter():
        p = subprocess.Popen( ['facter'], stdout=subprocess.PIPE )
        p.wait()
        lines = p.stdout.readlines()
        return facter2dict( lines )

if __name__ == "__main__":
        pprint.pprint( facter() )

关于 "facter"的 Python 版本?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5149895/

10-12 18:39