将shell输出格式化为结构化数据?

时间:2009-03-31 21:36:57

标签: shell formatting output

是否有任何方法可以将shell命令的输出格式化为JSON或XML等结构化数据格式,以供其他应用程序处理?

使用案例:网络上的一堆CentOS服务器。我想以编程方式通过SSH登录它们,运行命令以获取系统统计信息并最终运行基本维护命令。而不是自己解析所有文本输出,我想知道是否有任何东西可以帮助我以结构化格式返回数据?即使只支持一些shell命令也是一个先机。

3 个答案:

答案 0 :(得分:1)

听起来像是SNMP的任务。

答案 1 :(得分:1)

可以轻易地使用木偶。您可以将其配置为仅对您要检查的内容运行它的检查。

您的整个傀儡配置可能包含:

exec { "yum install foo":
  unless => "some-check for software",
}

只有在yum install foo失败时才会运行some-check for software

这就是说如果你管理更多的服务器以获得尽可能多的配置并尽可能地建立木偶清单(或cfengine,bcfg2或类似物),那么会有很多好处。

答案 2 :(得分:0)

查看Nagios(http://www.nagios.org/)以进行远程系统监控。您正在寻找的可能已存在。