当前位置: 首页>>技术教程>>正文


linux – Ubuntu等同于Yum的WhatProvides,以查找哪个包提供了文件

, , , ,

问题描述

Fedora的yum软件包管理工具有一个不错的选项,称为whatprovides,它使您可以找到安装了特定二进制文件或文件的软件包。 Ubuntu上的等效命令是什么?

例如,说我想找到提供/usr/bin/mysqladmin的软件包。我知道应该是mysql-server*之类的东西。我已经读过apt-cache search blah是类似的命令,但是运行apt-cache search /usr/bin/mysqladmin不会返回任何内容。有更好的命令吗?

最佳回答

我相信apt-file会给您您想要的。

$ apt-file update
$ apt-file list mysqladmin
kmysqladmin: /usr/bin/kmysqladmin

$ apt-file search mysqladmin
autoconf-archive: /usr/share/aclocal/ac_prog_mysqladmin.m4
autoconf-archive: /usr/share/autoconf-archive/html/ac_prog_mysqladmin.html
bash-completion: /etc/bash_completion.d/mysqladmin
kmysqladmin: /usr/bin/kmysqladmin

$ apt-file search mysqladmin
mysql-admin: /usr/share/mysql-gui/administrator/mysqladmin_health.xml
mysql-admin: /usr/share/mysql-gui/administrator/mysqladmin_startup_variables_description.dtd
mysql-admin: /usr/share/mysql-gui/administrator/mysqladmin_startup_variables_description.xml
mysql-admin: /usr/share/mysql-gui/administrator/mysqladmin_status_variables.xml
mysql-admin: /usr/share/mysql-gui/administrator/mysqladmin_system_variables.xml
mysql-client-5.1: /usr/bin/mysqladmin
mysql-client-5.1: /usr/share/man/man1/mysqladmin.1.gz
mysql-cluster-client-5.1: /usr/bin/mysqladmin
mysql-cluster-client-5.1: /usr/share/man/man1/mysqladmin.1.gz
mysql-testsuite: /usr/lib/mysql-testsuite/r/mysqladmin.result
mysql-testsuite: /usr/lib/mysql-testsuite/t/mysqladmin.test

次佳回答

我为此使用dpkg -S filename。它无法搜索未随系统一起安装的文件,但是默认情况下,所有dpkg发行版中都附带了该文件,而apt-file则没有。

您还可以使用http://packages.ubuntu.com/网站查找系统上未安装的文件。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8543.html,未经允许,请勿转载。