首页 > 解决方案 > jsonpath kubectl 中的时间运算符

问题描述

我为我的 pod 设置了 timestemp 格式的标签“mytime”。现在我想选择所有过期的豆荚?有些人是这样想的:

kubectl get pods -o jsonpath='{range .items[*]}{.metadata.labels.mytime<$now()}{.metadata.name}{ "\n"}{end}'

但我看到错误

error: error executing jsonpath "{range .items[*]}{.metadata.labels.mytime<$now()}{.metadata.name}{ \"\\n\"}{end}": Error executing template: unrecognized identifier now(). Printing more information for debugging the template:
        template was:
                {range .items[*]}{.metadata.creationTimestamp>$now()}{.metadata.name}{ "\n"}{end}
        object given to jsonpath engine was: ...

如何在条件下使用时间?

标签: kubectljsonpath

解决方案


kubectl -n test get deployment -o jsonpath='{.items[?(@.metadata.labels.mytime<"2020-10-08_14-15-07")].metadata.name}'

推荐阅读