Displaying information on non-installed RPM packag

2020-05-15 07:59发布

I googled for this, but couldn't find how to query a non-installed RPM file for its information:

# 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]
[...]

Is there a command to read information out of non-installed RPM file?

标签: package rpm
7条回答
Animai°情兽
2楼-- · 2020-05-15 08:20

@crazyscot did answer the question. Thanks.

Additionally, I found that specific querytags can also be leveraged this way, which wasn't obvious from reading the man page. So, for example, I found I can do the following:

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

or, even:

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

This works nicely for RPM's that are not installed, and leveraging the available querytags in the installed rpm

Here is more information about tags

查看更多
Ridiculous、
3楼-- · 2020-05-15 08:21

rpm -qip foo.rpm

查看更多
家丑人穷心不美
4楼-- · 2020-05-15 08:33

Related - Display Infos For Installed Package :

rpm -qi InstalledPackageName
查看更多
爷的心禁止访问
5楼-- · 2020-05-15 08:36

Use rpm -qip:

rpm -qip package_path1 [package_path2 ...]
  • -q - query the package
  • -p - get the package name from arguments

It shows the following info:

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

The man page doesn't talk about the -i option in -q context. However, rpm -qp file doesn't produce the right output.

查看更多
Explosion°爆炸
6楼-- · 2020-05-15 08:37

When rpm is not-installed then (this will list the complete info, plus the list of contents in the package);

rpm -qipl <rpm_name.rpm> 

When rpm is installed then;

rpm -qi <rpm_name.rpm>

For more on rpm-queries. For more on handy-queries.

查看更多
淡お忘
7楼-- · 2020-05-15 08:38

there are lot of -i option used in above answers , best way to check :

For one rpms,

rpm -qlp <rpm-name>.rpm

For all rpms , search for your file with grep :

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

查看更多
登录 后发表回答