首页 > 解决方案 > 使用“jq”转义多行文本

问题描述

假设,我需要转义多行文本:

printf "\"aaa\"\nbbb"  
"aaa"
bbb

我试图逃避它jq -aR

printf "\"aaa\"\nbbb"| jq -aR 
"\"aaa\""
"bbb"

不幸的是,这不是我想要的。我想得到"\"aaa\"\nbbb"
我怎样才能正确"aaa"\nbbb逃脱jq

标签: jsonbashescapingjq

解决方案


使用 --slurp/-s 命令行选项。

$ printf "\"aaa\"\nbbb"| jq -asR 
"\"aaa\"\nbbb"

当然,在这种情况下,该-a选项没有任何区别。


推荐阅读