我喜欢使用kubectl ... -o jsonpath
但是我不知道如何打印包含特殊字符(如-
或/
或.
的注释。
这不起作用:
kubectl get pods tmp -o 'jsonpath={.metadata.annotations.kubernetes.io/created-by}{"\n"}'
也不是这样:
kubectl get pods tmp -o 'jsonpath={.metadata.annotations.kubernetes\.io\/created\-by}{"\n"}'
也不是这样:
kubectl get pods tmp -o 'jsonpath={.metadata.annotations}{["kubernetes.io/created-by"]}{"\n"}'
也不是这样:
kubectl取得广告连播tmp-1986694738-dhpx0 -o jsonpath =“ {\ $ ['metadata'] ['annotations'] ['kubernetes.io/created-by']}”“
(最后一个应该根据我能找到的关于JSONPath的信息工作,但是不能,而且无论如何,都很难使外壳转义正确。
需要一种方式来引用
一个用例是提取“创建者”或“初始容器”注释。 我想在上个月做这件事,并与jsonpath进行了对抗。
仅供参考,这可以通过go-template实现。 我们仍然应该修复jsonpath。
kubectl get pods tmp -o go-template=$'{{index .metadata.annotations "kubernetes.io/created-by"}}\n'
相似的问题: https :
最有用的评论
仅供参考,这可以通过go-template实现。 我们仍然应该修复jsonpath。
相似的问题: https :