25

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

例如,假设我想查找提供的包/usr/bin/mysqladmin。我知道它应该是这样的mysql-server*。我读过这apt-cache search blah是一个类似的命令,但运行apt-cache search /usr/bin/mysqladmin什么也不返回。有更好的命令吗?

4

2 回答 2

27

我相信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
于 2010-12-17T14:24:01.320 回答
10

我用dpkg -S filename它。它无法搜索系统上未安装的文件,但默认情况下它包含在所有 dpkg 发行版中,而 apt-file 没有。

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

于 2011-04-05T14:53:16.173 回答