json - 如何解析 echo json 值?
问题描述
我想解析一个值或将一个值转换为 json 格式。
我不知道该怎么做。
echo -e $(kubectl get pods "test-pod" -o jsonpath="{range .status.containerStatuses[*]}{.state}"\\n"{end}")
map[running:map[startedAt:2019-06-07T00:51:34Z]]
map[running:map[startedAt:2019-06-07T00:51:40Z]]
map[running:map[startedAt:2019-06-07T00:51:44Z]]
map[waiting:map[message:Back-off 5m0s restarting failed container=con4 pod=test-pod_test(609c90e4-88be-11e9-ba5f-fa163e9a67be) reason:CrashLoopBackOff]]
我只想获取所有容器的状态,例如 [运行中、运行中、运行中、等待中]。
提前致谢。
解决方案
jq
您可以使用 中的andkeys[]
命令来实现它jq
。以下将是要使用的命令:
kubectl get pods kube-dns-86f4d74b45-khd4z -n kube-system -o json | jq -r '.status.containerStatuses[].state | keys[]'
上面的命令将给出所有容器运行或等待或任何状态的以下输出
推荐阅读
- kubernetes - Kong Ingress 控制器说明
- javascript - 在构建 angular-6 应用程序时遇到此错误,我该如何解决?
- python - 单击 Windows 应用程序并使用 pywinauto 输入文本
- c++ - 共享内存数组中两个单元格的差异(并发)
- javascript - 如何在 Node js 中同步使用串口?
- wcf - Web.config 未在 IIS 中用于 WCF
- php - .ttf 文件不起作用
- python - QtWebView 哪个版本的 HTML?
- javascript - 当字体名称有空格时如何使用 JQuery 设置 CSS 字体系列
- google-bigquery - google bigquery 提取压缩现在不起作用