输出选项
格式化输出
所有 kubectl
命令的默认输出格式都是人类可读的纯文本格式。要以特定格式在终端窗口输出详细信息, 可以将 -o
或 --output
参数添加到受支持的 kubectl
命令中。
语法
取决于具体的 kubectl
操作,支持的输出格式如下:
-o custom-columns=<spec>
使用逗号分隔的自定义列列表打印表。
-o custom-columns-file=<filename>
使用 <filename> 文件中的自定义列模板打印表。
-o json
输出 JSON 格式的 API 对象
-o jsonpath=<template>
-o jsonpath-file=<filename>
-o name
仅打印资源名称而不打印任何其他内容。
-o wide
以纯文本格式输出,包含所有附加信息。对于 Pod 包含节点名。
-o yaml
输出 YAML 格式的 API 对象。
在此示例中,以下命令将单个 Pod 的详细信息输出为 YAML 格式的对象:
自定义列
要定义自定义列并仅将所需的详细信息输出到表中,可以使用 custom-columns 选项。
你可以选择内联定义自定义列或使用模板文件:-o custom-columns=<spec> 或 -o custom-columns-file=<filename>。
示例
内联:
模板文件:
其中,
template.txt
的内容如下:
运行这两个命令之一的结果类似于:
Server-side 列
kubectl 支持从服务器接收关于对象的特定列信息。 这意味着对于任何给定的资源,服务器将返回与该资源相关的列和行,以便客户端打印。 通过让服务器封装打印的细节,这允许在针对同一集群使用的客户端之间提供一致的人类可读输出。
此功能默认启用。要禁用它,请将该 --server-print=false
参数添加到 kubectl get
命令中。
例子
要打印有关 Pod 状态的信息,请使用如下命令:
输出类似于:
排序列表对象
要将对象排序后输出到终端窗口,可以将 --sort-by 参数添加到支持的 kubectl 命令。 通过使用 --sort-by 参数指定任何数字或字符串字段来对对象进行排序。
要指定字段,请使用 jsonpath 表达式。
语法
示例
要打印按名称排序的 Pod 列表,请运行:
最后更新于
这有帮助吗?