【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变量
相关推荐
ywl47081208716 小时前
常用的集合类有哪些?比如List如何排序?
list·java基础
hai31524754317 小时前
九章空间几何对照直译法:通用芯片 / 定制专用芯片 编译适配规则
linux·汇编·bash
绝世番茄18 小时前
鸿蒙原生ArkTS布局方式之List+swipeAction侧滑菜单深度解析
华为·list·harmonyos·鸿蒙
wok1571 天前
Git Bash 执行中文命令报错 127:MSYS 参数编码 bug 排查与修复
git·bug·bash
2501_943782333 天前
【共创季稿事节】鸿蒙原生 ArkTS 布局实现 Column + List + Navigation 协作导航 — 从列表渲染到页面切换的完整实践
学习·华为·list·harmonyos·鸿蒙
yoothey3 天前
报废审批流规则引擎设计——责任链模式完整实现
linux·开发语言·bash
栈溢出了4 天前
Redis 消息队列笔记:List 与 Pub/Sub
redis·笔记·list
vortex54 天前
Shell 命令执行知识体系全景解析
linux·运维·bash·shell·命令行
vortex54 天前
Shell 位置参数传递:从入门到“怀疑人生“
linux·bash·shell
scx_link22 天前
通过git bash在本地创建分支,并推送到远程仓库中
开发语言·git·bash