我正在尝试解析
JSON文档并在同一行上打印几个值.有没有办法采取以下文件:
{ "fmep": { "foo": 112,"bar": 234324,"cat": 21343423 } }
并吐出:
112 234324
我可以得到我想要的值,但它们打印在不同的行上:
$echo '{ "fmep": { "foo": 112,"cat": 21343423 } }' | jq '.fmep|.foo,.bar' 112 234324
如果有一个示例显示如何执行此操作,我会很感激任何指针.
解决方法
您的示例中最简单的方法是使用
String Interpolation和-r选项.例如
echo '{ "fmep": { "foo": 112,"cat": 21343423 } }' | \ jq -r '.fmep| "\(.foo) \(.bar)"'
产生
112 234324
您可能还需要考虑将值放在数组中并使用@tsv,例如
echo '{ "fmep": { "foo": 112,"cat": 21343423 } }' | \ jq -r '.fmep | [.foo,.bar] | @tsv'
它产生制表符分隔
112 234324
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。