有没有办法在 Bash 中对 JSON 进行字符串化

Is there a way to stringify JSON in Bash

我知道 jq 可以将序列化的 JSON 字符串转为 format/filter/modify 内容。但是,据我所知,输出始终是人类可读的 JSON 形式。 Bash 或 jq 本身有没有办法将输出字符串化?

例如给定

echo '{"foo" : "bar"}' | jq -r .

我正在寻找 "{\"foo\" : \"bar\"}"

的输出

您希望 -R,又名 --raw-input,使 jq 将您的输入视为字符串而不是对象。

echo '{"foo" : "bar"}' | jq -R .

“字符串化”,您的意思似乎是“将 JSON 值编码为 JSON 字符串”。

$ echo '{"foo": "bar"}' | jq '@json'
"{\"foo\":\"bar\"}"