【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变量
相关推荐
youtootech8 小时前
HarmonyOS《柚兔学伴》项目实战09-待办列表 UI——List+ForEach+滑动删除
数据结构·ui·华为·list·harmonyos
风向决定发型丶16 小时前
Shell中的特殊变量
linux·运维·bash
阿米亚波21 小时前
【C++ STL】std::list
c++·windows·笔记·stl·list
tiana_2 天前
写了个零依赖的 Go 版本管理器,curl | bash 完事
开发语言·golang·bash
无足鸟ICT4 天前
【RHCA+】bash命令
linux·开发语言·bash
甄同学4 天前
第十七篇:Bash Executor命令执行器,安全运行Shell命令
开发语言·安全·bash
yh弓长4 天前
Redis的list类及基础指令
redis·list
chh5635 天前
C++--list
开发语言·数据结构·c++·学习·算法·list
儒雅的名5 天前
GoF设计模式——策略模式
设计模式·bash·策略模式
绝世番茄6 天前
登录表单布局:从 Column 到完整表单 —— 鸿蒙 HarmonyOS ArkTS 原生学习指南
华为·list·harmonyos·鸿蒙