jsonpath 与 kubectl 获取“app.kuberentes.io/version”值

Vac*_*ano 2 powershell jsonpath kubernetes kubectl

我需要从我的 Pod 获取metadata->labels->app.kubernetes.io/version 值。但我似乎找不到jsonpath允许标签键具有斜杠和句点的方法。

我有一个正在运行的基本命令: kubectl get pods -o=jsonpath="{range .items[*]}{.metadata.name}{end}" -A。这成功返回每个 Pod 的名称。

我已经修改了这个以尝试获取版本。以下是我尝试过的排列(每个排列都失败了):

kubectl get pods -o=jsonpath="{range .items[*]}{.metadata.labels.app.kubernetes.io/version}{end}" -A
Run Code Online (Sandbox Code Playgroud)

kubectl get pods -o=jsonpath="{range .items[*]}{.metadata.labels.'app.kubernetes.io/version'}{end}" -A
Run Code Online (Sandbox Code Playgroud)

kubectl get pods -o=jsonpath="{range .items[*]}{.metadata.labels.`"app.kubernetes.io`/version`"}{end}" -A
Run Code Online (Sandbox Code Playgroud)

我如何获取使用的版本jsonpath

如果这很重要的话,我正在 Windows PowerShell 中运行

Rei*_*ith 7

键名称中的转义点:

.metadata.labels.app\.kubernetes\.io/version
Run Code Online (Sandbox Code Playgroud)
kubectl get pods -o=jsonpath="{range .items[*]}{.metadata.labels.app\.kubernetes\.io/version}{end}" -A
Run Code Online (Sandbox Code Playgroud)