首页/云/云与容器速查/kubectl -o 输出格式(yaml/jsonpath/custom-columns)
本包目录(340 条)
云基础概念44 条计算与存储56 条网络与安全组33 条容器与 Docker106 条
Kubernetes68 条
容器排障33 条

kubectl -o 输出格式(yaml/jsonpath/custom-columns)

把资源按需输出:yaml/json 用于查看完整对象,jsonpath 与 custom-columns 用于脚本取字段。取状态、IP、镜像版本这类信息比 grep 稳得多。

云与容器速查云更新于 2026-10-12
yaml / json-o yaml 看完整定义(含 status、事件除外)
jsonpath-o jsonpath='{.items[*].metadata.name}' 支持 range 遍历
custom-columns-o custom-columns=名字:.metadata.name,节点:.spec.nodeName
名称输出-o name 输出 kind/name 形式,便于管道
排序--sort-by 配合 jq 可做排行

实用示例

实用示例
kubectl get pods -o custom-columns=NAME:.metadata.name,IP:.status.podIP,NODE:.spec.nodeName
kubectl get deploy web -o jsonpath='{.spec.template.spec.containers[*].image}'
kubectl get pods -o yaml > pods.yaml
jsonpath 里用 {range .items[*]}…{end} 做遍历;复杂需求直接 -o json 交给 jq。

易错点

  • jsonpath 引号被 shell 吃掉:整条用单引号包住最稳
  • custom-columns 列名含空格/中文:显示错位,脚本解析直接崩

数据来源与参考

  • Kubernetes Docs:kubectl JSONPath Support
  • Kubernetes Docs:kubectl get

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌