2つの異なるバージョンのrpmファイル(1.1.rpm、2.1.rpm)があるため、ここではrpmを照会し、出力をテキストファイル(1.1.txt、2.1.txt)に保存し、2つのバージョンを比較する必要があります。バージョン txt ファイルを作成し、テーブル列に違いを表示します。
たとえば、
Pkg Name | 1.1.txt | 2.1.txt
-------------------------------+---------------------------+---------------------------
qq | 3.4.4. | 3.5.5
rr | 1.18.1 | 1.18.1
このcmdを使用してクエリを試みます。
rpm -qplv file* > 1.1.txt
どうすればいいのかご存知ですか?
ベストアンサー1
パッケージからおよびを取得するには、name
デフォルトとオプションを使用しておよび書式指定子を指定できます。フィールド幅修飾子を含む(Cと同じ方法で)書式を提供できます。また、rpm署名エラーを無視するようにリダイレクトしようとしています。version
rpm
rpm -qp
--queryformat
%{NAME}
%{VERSION}
printf
stderr
/dev/null
たとえば、現在のディレクトリにあるすべてのrpmパッケージの名前とバージョンを一覧表示するには、次の手順を実行します。
例レート:
$ l1 *.rpm
athena-jot-9.0-4.1.x86_64.rpm
freetype2-devel-32bit-2.6.3-5.1.x86_64.rpm
ft2demos-2.6.3-5.1.x86_64.rpm
gtkwrite-0.1.2-2.1.x86_64.rpm
libfreetype6-32bit-2.6.3-5.1.x86_64.rpm
これらの緩いrpmでコマンドを実行すると、次のようになります。
$ rpm -qp --queryformat "%-24{NAME}%15{VERSION}\n" *.rpm 2>/dev/null
athena-jot 9.0
freetype2-devel-32bit 2.6.3
ft2demos 2.6.3
gtkwrite 0.1.2
libfreetype6-32bit 2.6.3
1.1.txt
ファイルに書き込むには、次のように出力をリダイレクトします。
$ rpm -qp --queryformat "%-24{NAME}%15{VERSION}\n" *.rpm 2>/dev/null > ~/tmp/1.1.txt
$ cat ~/tmp/1.1.txt
athena-jot 9.0
freetype2-devel-32bit 2.6.3
ft2demos 2.6.3
gtkwrite 0.1.2
libfreetype6-32bit 2.6.3