我在我的linux框中安装了一个名为my-scheduler-1.1.0-1112
的程序当我做rpm -qa |时grep my,它列出如下所示:
my-scheduler-1.1.0-1112
我想要一个命令,它将提取1.1.0-1112,这是我的shell脚本中的版本部分。
在shell脚本中提取它的命令是什么?
答案 0 :(得分:3)
对于这个问题,您可以尝试使用 - queryformat 参数来获取rpm。
像:
rpm -qa --queryformat '%{NAME}' | grep my
应该打印
my-scheduler
没有版本字符串...用sed或类似物来捣蛋更好。因为你可以得到像package-1.0.3-rc2
或soo ..
对于版本发布:使用:
--queryformat "%{VERSION}-%{RELEASE}"
并且可能有用阅读http://www.rpm.org/max-rpm/ch-queryformat-tags.html - 这里有许多有用的查询格式标签,因此您可以直接获得您想要的内容以及您想要的格式,而无需编写脚本...