【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变量
相关推荐
Madison-No72 小时前
【C++】关于list的使用&&底层实现
数据结构·c++·stl·list·模拟实现
微露清风1 天前
系统性学习C++-第九讲-list类
c++·学习·list
吴名氏.1 天前
细数Java中List的10个坑
java·开发语言·数据结构·list
鸠摩智首席音效师3 天前
如何在 Bash 命令中执行命令 (嵌套命令) ?
linux·bash
Bella的成长园地3 天前
Linux 中sudo bash -i 和 su root 有什么区别?
linux·运维·bash
列逍3 天前
list的模拟实现
数据结构·c++·list
FmZero5 天前
基于比特位图映射对List<Object>多维度排序
数据结构·list
霸道流氓气质5 天前
Java中使用Collator实现对象List按照中文姓名属性进行A-Z的排序实现
java·开发语言·list
一个心烑6 天前
将一个List分页返回的操作方式
数据结构·list
小杰帅气6 天前
STL_List简单使用
开发语言·c++·list