如何遍历SLES中已安装软件包的名称

时间:2018-01-17 09:28:54

标签: linux shell rpm suse sles

我想将SLES SP1系统上安装的软件包移植到另一台没有互联网连接的SLES系统。所以我有了使用

的想法
rpmrebuild packagename

将所有已安装的软件包打包回rpms,然后将这些软件包复制到另一台机器上。

所以我正在寻找一种方法来遍历所有已安装软件包的名称。

1 个答案:

答案 0 :(得分:1)

如果我正确理解了您的问题,您可以使用下面的shell脚本在任何具有RPM软件包管理器的系统上循环遍历已安装软件包的列表 -

#!/bin/bash 

while read -r package; do echo "This package is $package"; done < <(rpm -qa)

输出 -

This package is ethtool-3.15-2.27.amzn1.x86_64
This package is libXau-1.0.6-4.9.amzn1.x86_64
This package is libXcomposite-0.4.3-4.6.amzn1.x86_64
This package is libblkid-2.23.2-33.28.amzn1.x86_64
....................................................