如何確定編譯rpm數據包的Linux版本(分發版)?如何確定編譯rpm的操作系統版本?
0
A
回答
1
1
我相信這是你所追求的。
$ rpm -q gnome-speech --queryformat '%10{NAME} %20{VENDOR} %20{RELEASE} %20{ARCH}\n'
gnome-speech Red Hat, Inc. 1.fc6 i386
$ rpm -q hwdata --queryformat '%10{NAME} %20{VENDOR} %20{RELEASE} %20{ARCH}\n'
hwdata Red Hat, Inc. 1.el5 noarch
有很多漂亮的位可以用queryformat去後,看到this guide爲參考的。
關於rpm-philosophy-multi-architecture的一般參考。
+0
差不多。我認爲%{OS}標記是需要的,所以這可能會更好... 'rpm -q -p myfiletotest.rpm --queryformat'%10 {NAME}%10 {OS}%10 {VERSION} %10 {RELEASE}%10 {ARCH} \ n'' – 2016-09-15 00:23:34
0
您可以使用rpm -q
從RPM中的OS標籤獲取OS數據,但是您需要指定查詢格式,因爲它不在正常的-i
輸出中。您可以使用-p
來指代測試的特定RPM文件。
$ rpm -q -p myfiletotest.rpm --queryformat '%10{NAME} %10{OS} %10{VERSION} %10{RELEASE} %10{ARCH}\n' mypackage linux 2.2.10 1_14.el6 x86_64
的OS的名字是在該輸出的第二字段。雖然RPM不區分OS的版本,你只會看到'linux','aix','達爾文'等等,而不是'centos-6'。
你的意思是編程或一般? – 2010-06-17 11:29:09
它通常在名稱和次要版本號中,例如.el5。對於RHEL5或兼容的.fc13。對於Fedora 13等等。它也可能在簽名密鑰名稱中(例如「CentOS 5簽名密鑰」或類似名稱)。除此之外,我不認爲它被編碼。 – Rup 2010-06-17 11:41:45