怀疑这是我正在制作的新手错误,但是试图解析json,例如
{"current_observation": {"observation_time": "Last Updated on July 4, 12:53 PM CDT" } }
来自
等脚本#!/bin/sh
jq '.' test.json
我从./test.sh收到错误回复,如下所示
syntax error, unexpected INVALID_CHARACTER, expecting $end '.'1 compile error
现在,如果我做了一个jq'。'来自终端命令行的test.json,它按预期执行,但是当尝试在脚本中使用它时,它会失败。
任何人都能指出我的错误吗?
答案 0 :(得分:2)
我可以使用此脚本重现您的错误:
#!/bin/sh
jq \'.\' test.json
我认为你只需要摆脱.
周围的引号,虽然它对我来说没有未转义的引号。
尝试就像这样:
#!/bin/sh
jq . test.json
这可能与jq的bug report有关。 (虽然可能不是因为它在命令行上适合你)
答案 1 :(得分:0)
逗号产生错误。你应该引用它:
{"current_observation": {"observation_time": "Last Updated on July 4\u002c 12:53 PM CDT" } }
测试:
$ jq '.' temp.txt
{
"current_observation": {
"observation_time": "Last Updated on July 4, 12:53 PM CDT"
}
}