python - bash + 如何从 rpm 捕获版本
问题描述
这就是我尝试获取 Kafka 版本的方式
rpm -qa | grep "^kafka_"
kafka_2_6_5_0_292-1.0.0.2.6.5.0-292.noarch
Kafka 版本是 1.0 ,所以我做了以下以削减 Kafka 版本
rpm -qa | grep "^kafka_" | sed s'/-/ /g' | awk '{print $2}' | cut -c 1-3
1.0 <----- results
上面的cli似乎没有那么优雅和冗长的语法
我们可以做得更好吗,也许使用 Perl 或 Python 一个线性命令?
解决方案
您可以使用单个awk
:
rpm -qa |
awk -F- '/^kafka_/ && split($2, a, /\./) >= 1 {print a[1] "." a[2]}'
1.0
推荐阅读
- python - ConnectionRefusedError: [WinError 10061] 目标机主动拒绝如何解决?(Django SMTP)
- sql-server - 从 Crystal Report 的 RPT 文件创建 PDF 并通过存储过程将生成的 PDF 文件附加到 SQL 的 db 邮件系统中
- c# - 无法授权我的前端 .Net 核心应用程序
- java - 如何在 Oracle SQL Developer 上修复“java.libary.path 中没有 ocijdbc12”?
- ubuntu-16.04 - 从 Ubuntu 中删除 git 机密
- swift - 使用“CodingKeys”枚举仅覆盖少数 JSON 键
- html - 图标未在圆形标签内垂直居中显示
- php - 使用php从文本文件中提取值
- sql - 子查询和普通查询得出不同的结果
- php - 如何将表单验证错误放在警告框中?