eve*_*zon 2 bash json escaping
我想读取一个文件,并将整个内容放到一个转义用于json对象的单个字符串中。
我想在命令行/终端(Linux)上执行此操作。
有任何想法吗?提前THX!
对于对我的解决方案感兴趣的每个人(请阅读“ UPDATE 1”):
jq -n \
--arg content "$(cat theFile.txt)" \
'{ theContent : $content }' \
| \
jq '.theContent'
Run Code Online (Sandbox Code Playgroud)
更新0
Jeff Mercado为第一部分提供了更紧凑的解决方案-因此我在代码中对其进行了如下修改:
jq -Rs \
'{ theContent: . }' \
theFile.txt \
| \
jq '.theContent'
Run Code Online (Sandbox Code Playgroud)
更新1
现在,Jeff Mercado为我寻找的东西提供了更紧凑的解决方案:
jq -Rs '.' theFile.txt
Run Code Online (Sandbox Code Playgroud)
THX阅读;-)
更直接的方法是使用原始输入 ( -R) 结合 slurp ( -s) 参数将整个输入作为单个字符串读取。然后获取该输入并存储在适当的属性中。您不需要将它作为单独的参数传入。
$ jq -Rs '{ theContent: . }' theFile.txt
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
615 次 |
| 最近记录: |