【bash工具】jq遍历list

jq遍历list的两种方式

方法一:read -r + while循环 按行读取

bash 复制代码
$rows=$(cat file.json | jq -rc '@base64')
while IFS= read -r line; do    # IFS必须为空,才能正确按行处理
	echo $line | jq -r '.ID'   # 获取ID字段
done < file    # 读取文件内容
# done <<< "$str"  # here string方式读取bash变量

方法二:base64编码 + for循环 读取

bash 复制代码
$rows=$(cat file.json | jq -rc '@base64') # 紧凑方式输出json并编码,这样就没有空格字符
# for只能按空白字符(空格、换行符)来分割string。所以必须先用base64编码去除空格
for row in $rows; do
	echo $row | base -d | jq -r '.ID'   # base64解码,获取ID字段
done < file    # 读取文件内容
# done <<< "$str"  # here string方式读取bash变量
相关推荐
花哥码天下8 小时前
修复Bash脚本Here Document错误
开发语言·bash
秋邱11 小时前
Java面向对象进阶实战:用工厂模式+策略模式优化支付系统
java·bash·策略模式
月明长歌15 小时前
【码道初阶】Leetcode771 宝石与石头:Set 判成员 vs List 判成员(同题两种写法的差距)
java·数据结构·leetcode·list·哈希算法·散列表
悟能不能悟2 天前
java map<String,List>判断是否有key,get(key.add(x),否则put(key,new list(){x})的新写法
java·list
智航GIS2 天前
3.2 列表(List)
数据结构·windows·list
junlaii2 天前
Windows Claude Code Git Bash 依赖修复教程
windows·git·bash
Percep_gan2 天前
解决-bash: /usr/bin/yum: No such file or directory
开发语言·bash
悟能不能悟3 天前
java list.addAll介绍
java·windows·list
qq_463408423 天前
React Native跨平台技术在开源鸿蒙中使用WebView来加载鸿蒙应用的网页版或通过一个WebView桥接本地代码与鸿蒙应用
javascript·算法·react native·react.js·开源·list·harmonyos
gis分享者3 天前
Bash 中如何使用正则表达式进行文本处理?(中等)
正则表达式·bash·shell·文本·处理