我正在读取 JSON 对象并将jq
字段的值附加到另一个文件,如下所示:
curl $JSON| jq '.body' | tee -a page1.md
这很好用,但是我从curl命令中提取的markdown并没有在page1.md
.它只是附加,并没有考虑降价样式,例如###
粗体文本。例如,下面的行正是上面的命令在测试运行期间附加的内容...请注意该行开头和结尾的引号。所有这些都输出到一行上,破坏了最初从curl中提取的原始markdown格式的完整性。
"###test test test \r\n**test test **\r\n\r\n> test test test test\r\n\r\n\r\test test test\n"
如何附加此文本以供 Markdown 读取格式样式?我认为引号引起了问题?
答案1
包含标记的字符串以编码形式存储在 JSON 文档中。使用jq -r
而不是jq
.这将为您提供解码(“原始”)输出,不带外部引号。
使用 shell 变量时不要忘记用双引号引起来。
curl "$JSON" | jq -r '.body' >> page1.md