在bash中,我试图在jsonpath中为openshiftpatch
cli命令使用一个变量:
OS_OBJECT='sample.k8s.io/element'
VALUE='5'
oc patch quota "my-object" -p '{"spec":{"hard":{"$OS_OBJECT":"$VALUE"}}}'
但是那给出了错误:
Error from server: quantities must match the regular expression '^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$'
指示该变量未被替换/扩展。
如果我明确写出来,它会起作用:
oc patch quota "my-object" -p '{"spec":{"hard":{"sample.k8s.io/element":"5"}}}'
关于如何在jsonstring中包含变量的任何建议?
用单引号括住bash。
尝试一下:
oc patch quota "my-object" -p "{'spec':{'hard':{'$OS_OBJECT':'$VALUE'}}}"