如何找到 CentOS 上缺少手册页的软件包?

如何找到 CentOS 上缺少手册页的软件包?

在底部man pcregrep,有一条消息:

SEE ALSO

       pcrepattern(3), pcresyntax(3), pcretest(1).

但是,当我尝试查看时,man pcresyntax我得到:

$ man pcresyntax
No manual entry for pcresyntax
$ man 3 pcresyntax
No entry for pcresyntax in section 3 of the manual
$ man -k pcre
pcre-config          (1)  - program to return PCRE configuration
pcregrep             (1)  - a grep with Perl-compatible regular expressions
pcre_table           (5)  - format of Postfix PCRE tables
pcretest             (1)  - a program for testing Perl-compatible regular expressions

我尝试过yum info pcresyntax,甚至yum search pcresyntax什么也没得到。根据下面发布的一些评论的建议,我尝试了yum provides pcresyntaxyum whatprovides pcresyntax没有结果。 (此机器运行的是 CentOS 6.6。)

什么包包含手册页pcresyntax?更重要的是,我怎样才能找到哪个包包含我缺少的手册页?

(这主要是针对缺少其他手册页中提到的手册页,而不是缺少已安装命令的手册页。换句话说,手册页与给定命令没有明显关联。)


笔记:我专业从事 Linux 工作,我对广泛适用的答案以及特定于任何主要包管理器的答案感兴趣。 pcresyntax只是缺少手册页的一个具体示例,而不是我的问题的最终结果。

目前在工作中我主要使用yum,主要是在 RHEL/CentOS 6 上,我问的是标题问题,而不是“在哪里可以找到pcresyntax手册页?”因为我想尽可能多地了解如何查找和安装丢失的手册页,以供现在(RHEL/CentOS)和将来(Ubuntu/Debian、OpenSUSE,...?)的专业用途

自从问这个问题以来,我还发现了Stack Overflow 正则表达式常见问题解答这回答了我所有关于 PCRE 的直接问题。 ;)

答案1

对于使用 RPM (yum) 包管理器的系统,例如(此处)CentOS,使用yum provides或者yum whatprovides:

provides or whatprovides
              Is used to find out which package provides some feature or
              file. Just use a specific name or a file-glob-syntax wildcards
              to list the packages available or installed that provide that
              feature or file.

对于pcresyntax,您可以尝试:

yum whatprovides "*/pcresyntax"

RHL 文档,

yum provides "*/file_name"是查找包含 file_name 的包的有用方法。

还访问如何找到哪个 rpm 软件包提供了我正在寻找的文件?


对于使用 APT 作为默认包管理器的 Debian/Ubuntu 系统,有apt-file(谢谢@吉尔斯指出)可以完成您正在寻找的工作的命令。

DESCRIPTION
       apt-file is a command line tool for searching files in packages for the APT package management system.

search Search in which package a file is included. A list of all packages containing the  pattern  pattern  is returned.

因此,请使用apt-file search来查找包含您要查找的文件的包。


换句话说,联机帮助页由文件提供(通常来自 /usr/share/man)和可能的重复如何找出文件属于哪个(未安装)包?

答案2

我发现它是这样的:

yum whatprovides '*/man3/pcresyntax*'

在我的 CentOS 6.5 机器上,它显示在 PCRE-DEVEL-7.8-6.EL6 中

相关内容