jq
当输入无效时会打印如下错误消息。
$ jq . <<< "xxx"
parse error: Invalid numeric literal at line 2, column 0
我想控制当输入的 json 无效时打印的内容。例如,我可能想在原始错误消息前面添加一些内容。我怎样才能用 jq 实现这个目标?
XXX:parse error: Invalid numeric literal at line 2, column 0
您可以使用
-R
/--raw-input
标志执行类似的操作:
$ jq -R 'try fromjson catch "XXX:\(.)" | error' <<< "xxx"
jq: error (at <stdin>:1): XXX:Invalid numeric literal at EOF at line 1, column 3 (while parsing 'xxx')