Отображение информации о не установленном пакете RPM? - PullRequest
63 голосов
/ 09 июня 2010

Я гуглил по этому поводу, но не смог найти, как запросить неустановленный RPM-файл для его информации:

# rpm -qa blackfin-jtag-tools-09r1.1-2.i386.rpm
# 
# rpm -qi blackfin-jtag-tools-09r1.1-2.i386.rpm
package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed
# 
# rpm -q blackfin-jtag-tools-09r1.1-2.i386.rpm
package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed
# 
# rpm --info  blackfin-jtag-tools-09r1.1-2.i386.rpm
RPM version 4.8.0
Copyright (C) 1998-2002 - Red Hat, Inc.
This program may be freely redistributed under the terms of the GNU GPL

Usage: rpm [-aKfgpWHqVcdilsKiv?] [-a|--all] [-f|--file] [-g|--group] [-p|--package] [-W|--ftswalk] [--pkgid] [--hdrid] [--fileid]
        [--specfile] [--triggeredby] [--whatrequires] [--whatprovides] [--nomanifest] [-c|--configfiles] [-d|--docfiles]
        [--dump] [-l|--list] [--queryformat=QUERYFORMAT] [-s|--state] [--nofiledigest] [--nomd5] [--nofiles] [--nodeps]
[...]

Есть ли команда для чтения информации из неустановленного файла RPM?

Ответы [ 7 ]

107 голосов
/ 09 июня 2010

rpm -qip foo.rpm

15 голосов
/ 07 июня 2012

@ Crazyscot ответил на вопрос. Спасибо.

Кроме того, я обнаружил, что таким образом можно использовать и специальные теги запросов, что было неочевидно при чтении справочной страницы. Так, например, я обнаружил, что могу сделать следующее:

    rpm -qp --queryformat '%{ARCH}\n' foo.rpm

или даже:

    xyz="ARCH";  rpm -qp --qf %{${xyz}}  foo.rpm; echo ""

Это хорошо работает для RPM, которые не установлены, и использует доступные теги запросов в установленной rpm

Вот больше информации о тегах

8 голосов
/ 27 апреля 2016

Если rpm не установлен тогда (будет отображена полная информация, плюс список содержимого в пакете);

rpm -qipl <rpm_name.rpm> 

Когда rpm установлен then;

rpm -qi <rpm_name.rpm>

Подробнее о rpm-запросов .Подробнее о удобных запросах .

2 голосов
/ 26 июня 2018

Использовать rpm -qip:

rpm -qip package_path1 [package_path2 ...]
  • -q - запросить пакет
  • -p - получить имя пакета из аргументов

Показывает следующую информацию:

Name
Version
Release
Architecture
Install Date
Group
Size
License
Signature
Source RPM
Build Date
Build Host
Relocations
Packager
Vendor
URL
Summary
Description

На странице руководства не говорится о параметре -i в контексте -q.Однако rpm -qp file не дает правильного вывода.

0 голосов
/ 11 мая 2018
less <rpm_name.rpm>

Отображает все, что мне нужно, так же, как 'rpm -qlpv'.Очень хороший ресурс: https://blog.packagecloud.io/eng/2015/10/13/inspect-extract-contents-rpm-packages/.

0 голосов
/ 11 декабря 2017

Есть много опций -i, используемых в ответах выше, лучший способ проверить:

Для одного об / мин,

rpm -qlp <rpm-name>.rpm

Для всех об / мин, поискдля вашего файла с grep:

rpm -qpl *.rpm|grep <string or file name>

0 голосов
/ 02 августа 2015

Связанные - Отображение информации для установленного пакета:

rpm -qi InstalledPackageName
...