侧边栏壁纸
博主头像
Awesome Devin 博主等级

行动起来,活在当下

  • 累计撰写 345 篇文章
  • 累计创建 26 个标签
  • 累计收到 3 条评论

目 录CONTENT

文章目录

Linux安装yq,jq

Administrator
2024-10-22 / 0 评论 / 0 点赞 / 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”,新鲜技术文章第一时间推送。

0
博主关闭了所有页面的评论