json - 如何使用 jq 获取第一个数据?
问题描述
我有一些测试数据文件 test.txt:
{
"type": "home",
"number": "212 555-1234"
}
{
"type": "fax",
"number": "646 555-4567"
}
我尝试获取第一个数字:
jq .number test.txt
但它得到了所有的数字。
谁能帮我?
解决方案
如您所见,默认情况下,jq 读取整个输入流。-n 命令行选项关闭此行为,因此一个(有效的)解决方案是:
jq -n 'input.number' test.txt
如果你的 jq 没有input
,那么现在是升级的好时机;如果这是不可能的:
jq -s '.[0].number' test.txt
推荐阅读
- tensorflow - TensorFlow Federated 中 Resnet 的评估精度低
- javascript - 使用 :focus-within 时更新 aria-expanded 属性的最佳方法
- java - Kafka 管道示例不将所有记录从 topic-a 管道传输到 topic-b
- python - 在 Python Try/Except 块中测试代码
- c# - 在独立构建中关闭垂直同步的背景抖动(高 fps/300+ fps)
- unit-testing - `go test ./... -coverprofile=coverage.out` 不报告所有内容?
- python - 在 python 字典中为相同值使用替代键的紧凑方法
- android - RowHeader 中的文本数据
- ios - 无论如何获取iPhone设备的USB Mac地址?
- sql - Tsql:与 IN 一起使用的小写字母