特定文件属于哪个Fedora软件包?


69

在Debian OS系列中,dpkg --search /bin/ls给出:

coreutils: /bin/ls

也就是说,该文件/bin/ls属于Debian软件包,名为coreutils。(如果您对包含未安装文件的软件包感兴趣,请参阅此文章

什么是Fedora等价物?

Answers:


85

您可以rpm -qf /bin/ls用来确定您安装的版本属于哪个软件包:

[09:46:58] ~ $ rpm -qf /bin/ls
coreutils-8.5-7.fc14.i686
[09:47:01] ~ $ 

更新:根据您的评论,如果您只想要包的名称(我刚刚有机会进行测试),则以下内容应该起作用:

[01:52:49] ~ $ rpm -qf /bin/ls --queryformat '%{NAME}\n'
coreutils
[01:52:52] ~ $ 

您还可以使用dnf provides /bin/ls获取将提供文件的所有可用存储库软件包的列表:

# dnf provides /bin/ls
Last metadata expiration check: 0:17:06 ago on Tue Jun 27 18:04:08 2017.
coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : @System

coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : updates

coreutils-8.25-14.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : fedora

有没有办法让rpm显示文件的所有者而不提供完整路径?您想为此添加注释吗?
tshepang 2010年

@Tshepang:我认为您应该可以添加--queryformat '%{NAME}'以完成此操作,但我自己尚未对其进行测试。不过,我可以进行快速测试并在工作后进行更新。同时,您可能会在这里找到有用的信息:rpm.org/max-rpm/s1-rpm-query-parts.html
eldarerathis

只是想补充一下,OpenSuSE zypper具有what-provides完成这项任务的功能。搜索时会首先出现此问题,因此即使该问题是特定的,也很容易获得此答案。
Casualunixer 2012年

2
对于fedora 22,“ dnv提供文件名”也适用
Trismegistos
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.