2018-06-14_Centos_rpmコマンドでアーキテクチャ名を表示する

このページでわかること

  • centosでインストールされているパッケージ確認の際にアーキテクチャ名も合わせて表示する方法

自分がLinux触りたての頃にハマったので備忘の為にまとめておきます。 結論としてはrpmコマンドに--qfオプションで書式を設定表示を追加します。

1
rpm -qa --qf '%{name}-%{version}-%{release}.%{arch}.rpm\n'

参考

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
##c rpm -qa でパッケージ一覧を取得し行数を取得します
##c 970パッケージインストールされてます
#r rpm -qa | wc -l
970

##c どんなパッケージがあるかサラッと見てみます
##c GConf2-2.14.0-9.el5 や ImageMagick-6.2.8.0-15.el5_8 重複しているように見えます
#r rpm -qa | sort | head
Cluster_Administration-ja-JP-5.8-1.el5.centos
Deployment_Guide-en-US-5.8-1.el5.centos
Deployment_Guide-ja-JP-5.8-1.el5.centos
GConf2-2.14.0-9.el5
GConf2-2.14.0-9.el5
Global_File_System-ja-JP-5.8-1.el5.centos
ImageMagick-6.2.8.0-15.el5_8
ImageMagick-6.2.8.0-15.el5_8
MAKEDEV-3.23-1.2

##c 重複をカウントすると175行も出てきてしまいました……
#r rpm -qa | sort | uniq -d | wc -l
175

##c --qf(queryformat) オプションを使用し、フォーマット書式を指定します
##c %{arch}がアーキテクチャー(i368とかx86_64)
#r rpm -qa --qf '%{name}-%{version}-%{release}.%{arch}.rpm\n' |
grep "GConf2-2.14.0-9.el5"
GConf2-2.14.0-9.el5.i386.rpm
GConf2-2.14.0-9.el5.x86_64.rpm

##c 重複がない事を確認します
#r rpm -qa --qf '%{name}-%{version}-%{release}.%{arch}.rpm\n' \
| sort | uniq -d | wc -l
0