当我将文本行拆分为多行并使用命令在屏幕上显示 JSON 文件时,出现“解析错误” jq . words.json。
文本值位于一行的 JSON 文件如下所示
{
"words" : "one two three four five"
}
Run Code Online (Sandbox Code Playgroud)
该命令jq . words.json运行良好并在屏幕上显示 JSON 文件。
但是当我将值“一二三四五”分成两行并运行相同的命令时,我收到解析错误
{
"words" : "one two
three four five"
^
}
Run Code Online (Sandbox Code Playgroud)
解析错误:无效字符串:从 U+0000 到 U+001F 的控制字符必须在第 3 行第 20 列进行转义
解析错误指向"第三行末尾的字符。
我该如何解决这个问题?
这不是有效的 JSON;JSON 字符串不包含文字换行符。但你可以这样做:
jq -Rnr '[inputs] | join("\\n") | fromjson | .choices[0].message.content' sample.json
Run Code Online (Sandbox Code Playgroud)
小智 4
这是因为 JSON 格式无效。它应该看起来像这样:
{
"words" : "one two \nthree four five"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22784 次 |
| 最近记录: |