Linux中的软件包版本(Centos)?

时间:2014-11-25 17:11:26

标签: centos package version rpm

我需要检索Linux(Centos)主机上安装的所有软件包的软件包版本。 rpm -qa给出了所有已安装软件包的列表。 我明白rpm -qi"包名"给我包裹信息。我尝试从那里为包版本做一个grep并选择要显示的版本 - 但是这会为某些包创建一个问题,因为某些包附加了一些文本以及版本。以下是我的代码行: - rpm -qi"包名" | grep -w版本| awk' {print $ 3}'

有没有其他方法可以获得软件包版本 - 可能来自软件包名称本身?我们需要一个包含一个列中的包名称和第二列中的版本的报告。请帮忙。

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用--qf标志告诉rpm如何构造其输出。它将格式字符串作为参数。

因此,以下内容可以为您提供所需的信息。

rt=$(ip route get 8.8.8.8 | awk 'NR==1 {print $NF}')
rpm -qa --qf "$tdydate,$rt,%{name},%{version}\n"