簡體   English   中英

通過Python解析文件

[英]Parsing file via Python

請幫助我通過Python腳本解析Nagios配置文件。 我得到了帶有主機名的數組,並從中需要解析文件並獲取其成員。 我該怎么做?

有我的代碼:

import os
hostgroups=os.popen('grep hostgroup_name /var/log/nagios/objects.cache | cut -f3').read().split('\n')
for i in hostgroups[:-1]:
    print i

如何再次解析文件或如何獲取成員。 示例如下:

define hostgroup {
        hostgroup_name  test
        alias   test
        members server1,server2
        }

謝謝。

也許您應該使用python而不是grep解析文件:

例如:

with open("/var/log/nagios/objects.cache") as nagiosFile:
    hostgroups = {}
    hostgroup_name = None
    for line in nagiosFile.readlines():
        if "hostgroup_name" in line:
            hostgroup_name = line.split()[-1]
        if "members" in line:
            for members in line.split():
                hostgroups[hostgroup_name] = members.split(",")
    print hostgroups

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM