2010-12-17 38 views
20

Fedora的yum软件包管理工具有一个很好的选项叫做whatprovides,它可以让你找到哪个软件包安装了特定的二进制文件或文件。 Ubuntu上的等效命令是什么?Ubuntu相当于Yum的WhatProvides,找到哪个软件包提供了一个文件

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

+4

在没有天的情况下,它是Fedora中的'yum provides'。有对于包管理工具在Fedora /红帽到Ubuntu/Debian上的差异非常好的总结:https://help.ubuntu.com/community/SwitchingToUbuntu/FromLinux/%20RedHatEnterpriseLinuxAndFedora – erik 2014-02-16 13:53:01

回答

22

相信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 
+0

感谢。 apt-file search/usr/bin/mysqladmin – Cerin 2010-12-17 15:31:32

8

我使用'dpkg -S filename'。它无法搜索系统中未安装的文件,但默认情况下它会在所有dpkg发行版中发送,而apt-file不是。

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

相关问题