RPM コマンドでバージョン番号を省いてパッケージ名だけをリストアップする方法


RPM コマンドでバージョン番号を省いてパッケージ名だけをリストアップする方法

RedHat や CentOS 等の RPM ベースのシステムで、バージョン番号無しでパッケージ名だけをリストアップする方法を以下に記載します。

通常はバージョン番号付きでインストール済みのパッケージ一覧が表示されます。
# rpm -qa
php-jsonlint-1.6.1-1.el7.noarch
p11-kit-trust-0.23.5-3.amzn2.0.2.x86_64
ncurses-base-6.0-8.20170212.amzn2.1.2.noarch
libXau-1.0.8-2.1.amzn2.0.2.x86_64
python-six-1.9.0-2.amzn2.noarch
glibc-common-2.26-32.amzn2.0.1.x86_64
libXpm-3.5.12-1.amzn2.0.2.x86_64
openssl-1.0.2k-16.amzn2.1.1.x86_64
info-5.1-5.amzn2.x86_64
php-symfony-config-2.8.12-2.el7.noarch

しかし以下のようなコマンドを実行することによってバージョン番号を除外してパッケージ名だけを表示することが出来ます。
rpm -qa | sort | sed -e 's/\([^.]*\).*/\1/' -e 's/\(.*\)-.*/\1/'

実際の実行例は次の通りとなります。

# rpm -qa | sort | sed -e 's/\([^.]*\).*/\1/' -e 's/\(.*\)-.*/\1/'
acl
acpid
amazon-linux-extras
amazon-linux-extras-yum-plugin
amazon-ssm-agent
apr
apr-util
apr-util-bdb
at
attr
.....