【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变量
相关推荐
裤裤兔12 小时前
linux提取指定前缀文件到其他文件夹
linux·运维·服务器·bash·终端
凄戚1 天前
bash和命令
开发语言·chrome·bash
Evan芙1 天前
Bash 变量命名规则与类型使用
linux·运维·开发语言·chrome·bash
root_zhb1 天前
List.contains踩坑
java·list
爬山算法1 天前
Redis(128)Redis的跳表(Skip List)是如何实现的?
数据库·redis·list
曾经的三心草1 天前
Java数据结构-List-栈-队列-二叉树-堆
java·数据结构·list
世洋Blog1 天前
Unity面经-List底层原理、如何基于数组、如何扩容、List存储泛型、List有关在内存中的结构
unity·面试·c#·list
czxyvX1 天前
010-C++之List
开发语言·c++·list
归叶再无青1 天前
nginx从入门到实践全指南
运维·nginx·bash
胖咕噜的稞达鸭1 天前
进程概念,冯诺依曼体系结构,系统调用,父子进程初解
https·vim·bash