Linux安装yq,jq

作者:Administrator 发布时间: 2024-10-22 阅读量:8 评论数:0

Linux安装yq,jq

yq 是一个轻量级和便携式的命令行 YAML、JSON 和 XML 处理器。yq 使用类似于 jq 的语法,但可以处理 yaml、json、xml、properties、csv 和 tsv 文件。它目前还不支持 jq 支持的所有功能,但它支持最常见的操作和函数,并且还在不断添加更多功能。以下将讲解如何在linux安装yq。

yq官方源码地址:

https://github.com/mikefarah/yq

yq官方下载地址:

https://github.com/mikefarah/yq/releases

下载yq_linux_amd64(直接是二进制包)

wget https://github.com/mikefarah/yq/releases/download/v4.44.3/yq_linux_amd64

安装步骤

chmod 744 yq_linux_amd64
mv yq_linux_amd64 /usr/bin/
ln -s /usr/bin/yq_linux_amd64 /usr/bin/yq
yq -V

yq的使用

直接读取

yq '.a.b[0].c' file.yaml

输入流管道读取

yq '.a.b[0].c' < file.yaml

cat读取,并打印key、value

cat app-config-env.yaml | yq -o=json .data  |   jq -r 'to_entries[] | "key: \(.key), value: \(.value)"'

cat读取,并打印docker run的-e

cat app-config-env.yaml | yq -o=json .data  |   jq -r 'to_entries[] | "-e  \(.key)=\"\(.value)\""'

cat读取,并打印docker run的-e换行

cat app-config-env.yaml | yq -o=json .data | jq -r 'to_entries[] | "-e \(.key)=\(.value | @sh)"' | tr '\n' ' '

cat读取,并打印docker run的--add-host

cat app-config-host.yaml | yq -o=json .data | jq -r 'to_entries[] | "--add-host='\''\(.key):\(.value)'\''"' | tr '\n' ' '

另外,附上jq下载地址

方法类似

https://github.com/jqlang/jq/releases
https://github.com/jqlang/jq/releases/download/jq-1.7.1/jq-linux-amd64

参考链接:https://www.cnblogs.com/wangcc7/p/17749570.html

欢迎关注我的公众号“辣个男人Devin”,新鲜技术文章第一时间推送。

评论