You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AWS CLI将SSM命令调用结果输出为单表格式

如何用AWS CLI获取SSM命令执行结果的规范单表格式?

我正尝试获取包含实例ID(InstanceId)、状态(Status)和输出(Output)的单表结果,当前使用的AWS CLI命令如下:

aws ssm list-command-invocations --command-id "<commandid>" --details --query "CommandInvocations[].{Instancename:InstanceId,status:CommandPlugins[].Status,Output:CommandPlugins[].Output}" --output table

目前得到的结果是嵌套表格形式(如下所示),期望得到包含上述三个字段的规范单表格式:

-------------------------------------------------------------------------------
|                           ListCommandInvocations                            |
+-----------------------------------------------------------------------------+
|                                Instancename                                 |
+-----------------------------------------------------------------------------+
|  i-0a81b895adb29b4ce                                                        |
+-----------------------------------------------------------------------------+
||                                  Output                                   ||
|+---------------------------------------------------------------------------+|
||   18:11:28 up 26 days, 22:57,  0 users,  load average: 0.01, 0.11, 0.08
  ||
|+---------------------------------------------------------------------------+|
||                                  status                                   ||
|+---------------------------------------------------------------------------+|
||  Success                                                                  ||
|+---------------------------------------------------------------------------+|
|                           ListCommandInvocations                            |
+-----------------------------------------------------------------------------+
|                                Instancename                                 |
+-----------------------------------------------------------------------------+
|  i-084f6d183997baa09                                                        |
+-----------------------------------------------------------------------------+
||                                  Output                                   ||
|+---------------------------------------------------------------------------+|
||   18:11:28 up 33 days, 23:57,  0 users,  load average: 0.75, 0.38, 0.16
  ||
|+---------------------------------------------------------------------------+|
||                                  status                                   ||
|+---------------------------------------------------------------------------+|
||  Success                                                                  ||
|+---------------------------------------------------------------------------+|
|                           ListCommandInvocations                            |
+-----------------------------------------------------------------------------+
|                                Instancename                                 |
+-----------------------------------------------------------------------------+
|  i-0d8dd2712b340630b                                                        |
+-----------------------------------------------------------------------------+
||                                  Output                                   ||
|+---------------------------------------------------------------------------+|
||   18:11:28 up 26 days, 20:22,  0 users,  load average: 0.24, 0.29, 0.27
  ||
|+---------------------------------------------------------------------------+|
||                                  status                                   ||
|+---------------------------------------------------------------------------+|
||  Success                                                                  ||

解决方案

问题出在CommandPlugins[]返回的是数组结构,直接引用会让表格产生嵌套。只需用索引[0]提取数组中的第一个元素(通常单条SSM命令对应一个插件结果),修改后的命令如下:

aws ssm list-command-invocations --command-id "<commandid>" --details --query "CommandInvocations[].{Instancename:InstanceId,status:CommandPlugins[0].Status,Output:CommandPlugins[0].Output}" --output table

说明

CommandPlugins是数组类型,当使用CommandPlugins[].Status时会返回包含单个值的数组,导致AWS CLI输出嵌套表格。改用CommandPlugins[0].Status和CommandPlugins[0].Output可以直接获取单个字段值,最终生成包含实例ID、状态、输出三列的规范平级表格。

内容的提问来源于stack exchange,提问作者WebDeveloper2017

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 07:22:46