我用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
小智 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
以下是有关标签的更多信息
当没有安装 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 -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不会产生正确的输出。
| 归档时间: |
|
| 查看次数: |
71185 次 |
| 最近记录: |