我有一个带有\的密钥,我似乎无法使用jq访问它。任何帮助表示赞赏。
$ cat /tmp/yo
{
"kubectl.kubernetes.io\last-applied-configuration": "test"
}
$ cat /tmp/yo | jq .["kubectl.kubernetes.io\last-applied-configuration"]
parse error: Invalid escape at line 2, column 52
答案 0 :(得分:1)
这不是有效的JSON文档。 JSON中的反斜杠必须进行转义才能包含在文字字符串中。报告生成此无效内容的任何工具的错误。
要在JSON中包含反斜杠,请改为:
{
"kubectl.kubernetes.io\\last-applied-configuration": "test"
}
如果你有这样一个有效的文件,你可以使用:
jq '.["kubectl.kubernetes.io\\last-applied-configuration"]' </tmp/yo