显示有关未安装的RPM软件包的信息?

Gul*_*har 68 rpm package

我用Google搜索,但无法找到如何查询未安装的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]
[...]
Run Code Online (Sandbox Code Playgroud)

是否有命令从未安装的RPM文件中读取信息?

cra*_*cot 114

rpm -qip foo.rpm

  • 您还可以使用以下方法查看有关包的其他信息:例如`rpm -qp --scripts foo.rpm`列出rpms pre/post脚本或`rpm -qp --list foo.rpm`列出包内容.最后:为了完整性.-q是查询,-p是非安装包. (13认同)
  • 我也记不清了,所以我制作了一张备忘单http://www.pixelbeat.org/docs/packaging.html (4认同)

小智 15

@crazyscot确实回答了这个问题.谢谢.

另外,我发现也可以通过这种方式利用特定的查询标记,这在阅读手册页时并不明显.因此,例如,我发现我可以执行以下操作:

    rpm -qp --queryformat '%{ARCH}\n' foo.rpm
Run Code Online (Sandbox Code Playgroud)

甚至:

    xyz="ARCH";  rpm -qp --qf %{${xyz}}  foo.rpm; echo ""
Run Code Online (Sandbox Code Playgroud)

这适用于未安装的RPM,并利用已安装rpm中的可用querytags

以下是有关标签的更多信息


par*_*ish 9

没有安装 rpm时(这将列出完整信息,以及包中的内容列表);

rpm -qipl <rpm_name.rpm> 
Run Code Online (Sandbox Code Playgroud)

安装 rpm时;

rpm -qi <rpm_name.rpm>
Run Code Online (Sandbox Code Playgroud)

有关rpm查询的更多信息.有关方便查询的更多信息.


cod*_*ter 8

使用rpm -qip

rpm -qip package_path1 [package_path2 ...]
Run Code Online (Sandbox Code Playgroud)
  • -q- 查询包裹
  • -p- 从参数中获取包名称

它显示以下信息:

Name
Version
Release
Architecture
Install Date
Group
Size
License
Signature
Source RPM
Build Date
Build Host
Relocations
Packager
Vendor
URL
Summary
Description
Run Code Online (Sandbox Code Playgroud)

手册页没有讨论上下文-i中的选项-q。但是,rpm -qp file不会产生正确的输出。