首页 > 解决方案 > bash 脚本,用于从各种 datapower 框中检索 Rest api 服务列表并将内容显示到浏览器或 Excel 表

问题描述

我有一个休息管理 uri。使用它我必须从各种 datapower 框中提取服务列表。对于每个环境,我都有一个 datapower 盒和一个 rest mgmt uri。因此,我必须从每个环境的每个 datapower 框中提取详细信息,并以有组织的可读格式将所有内容显示到浏览器或 Excel 表中。

我只需要使用 bash 脚本。因为没有其他类型的脚本可以在我的系统中运行。

我使用 curl 来提取细节,但我只能提取一个休息 mgmt api。

curl -k -u 'username:password' https://dpbox001:5554/mgmt/status/DEV/ObjectStatus

我能够获得详细信息,但无法以可读的形式显示,并且对于所有环境的所有 dpbox 都以类似的方式显示。

运行上述 curl 命令后得到的输出:

"Class" : "ExampleProtocolHandler",
"OpState" : "up",
"AdminState" : "enabled",
"Name" : "Example_service",
"EventCode" : "0x00000000",
"ErrorCode" : "",
"ConfigState" : "saved"}, {

以下是restmgmt uri

https://dpbox001:5554/mgmt/status/DEV/ObjectStatus
  1. 对于所有环境,我需要使用其余的 mgmt uri ( https://dpbox001:5554/mgmt/status/DEV/ObjectStatus ) 获取所有 dpbox(总共 20 个)的详细信息。(我有 TST、STG、PRD)。

  2. 收集上述详细信息后,我需要以结构化形式向浏览器或 Excel 表显示完整信息,如下所示

    单行输出,如下所示,显示到控制台或浏览器

    类:Exampleprotocohandler Opstate:up Adminstate:启用名称:Exampleservice 事件代码:0x0000000 错误代码:configstate:已保存

    否则输出到 excel 表,如下面的列和行格式

    class opstate Adminstate Name Eventcode ErrorCode configstate Example up Enabled service 0xx000 if any saved

标签: bashshellscripting

解决方案


推荐阅读