如何使用 shell 命令通过库名称和版本查找包名称和版本?

如何使用 shell 命令通过库名称和版本查找包名称和版本?

是否有一个命令可以为我提供库的包名称和版本?

例如,我想获取当前未安装但必需的库mariadb-libs的版本。libmysqlclient_r.so.16

阅读答案后更新:

yum whatprovides "*libmysqlclient*"显示没有libmysqlclient_r.so.16列出库。ol7_latest不同版本的 mariadb-libs ( 5.5.56-2.el7.x86_64,5.5.60-1.el7_5.x86_64 ) 的存储库仅显示 so.18 库, 5.5.64-1.el7.x86_64

操作系统:Oracle Linux 7.7

答案1

您可以使用yum whatprovides

提供或者提供什么

用于找出哪个包提供了某些功能或文件。只需使用特定名称或文件全局语法通配符即可列出提供该功能或文件的可用或已安装的软件包。

例如:

yum whatprovides "*libmysqlclient*"

答案2

对不起。我认为,仅使用简单的 shell 命令不可能获取旧版本的库。为了找到它我用过rpmfind.net 输入库名称搜索关键词的 rpmfind.net

它表明,该库版本适用于el6系统,不适用于el7.也许可以el7通过启用存储库来获取此类信息el6,但这没有意义。从错误的存储库安装可能会破坏系统。使用 rpmfind 比使用需要启用额外存储库的命令更容易。因此,如果需要该库,最好安装甲骨文Linux 6对于此版本或其他版本,请在 rpmfind 上打印。

相关内容