当你不知道确切的软件包名称时,你可能会在安装apt软件包时遇到问题。与apt一样,你必须提供软件包的全名才能安装它,例如apt install apache2。如果没有提供确切的名称,而只是输入apache,它将不会被安装,删除apt软件包时也是如此。
在Ubuntu和Debian系统中,可以通过apt-cache搜索任何与其名称或描述相关的关键字来找到软件包。输出将会提供与搜索关键字匹配的软件包列表。找到确切的软件包名称后,即可将其与apt install一起使用进行安装。在查找有关特定包装的信息时,它也很有帮助。而使用apt-cache搜索,你可以搜索已安装或尚未安装的任何apt软件包。
本文将向你说明如何通过系统存储库中的apt-cache search命令搜索软件包。此外,还将学习其他一些命令:apt search和aptitude,通过它们你可以搜索任何软件包。
注意:我们已经在Ubuntu 18.04 LTS系统终端上执行了本文介绍的过程。要在Ubuntu中打开终端,请使用Ctrl + Alt + T键盘快捷键。
在执行以下任何一种方法之前,我们建议按以下方式更新存储库索引:
$ sudo apt update
使用apt-cache搜索软件包
Apt-cache是一个命令行工具,用于在基于Ubuntu或Debian的系统上搜索apt软件包。通过apt-cache搜索,可以使用与其名称或描述相关的关键字来搜索任何软件包。在输出中,它将显示所有符合搜索条件的软件包。
使用apt-cache搜索,你可以搜索和显示Internet信息库中有关可用软件包的信息。它还可以用于搜索有关系统上已安装的软件包的信息。它从不同来源获取有关软件包的信息,并将其保存在通过运行apt update操作进行更新的本地数据库中。
为了搜索软件包,请在bt后面键入apt-cache search的相关关键字。
$ sudo apt-cache search <keyword>
用任何已安装或可安装的软件包名称替换关键字。请注意,关键字可以是确切的名称,也可以是软件包名称的一部分,或者可以是与软件包描述相关的任何单词。在输出中,你将看到与所提到的关键字匹配的软件包列表以及每个软件包的简要说明。
例如,我们要安装存储管理解决方案ZFS。要找到确切的软件包名称,请使用apt-cache搜索如下进行搜索:
$ apt-cache search zfs
从输出中,你可以确定确切的软件包名称“ zfsutils-linux”以及简短说明。如您所见,显示的列表太长。您可以使用less命令一次查看输出一行或一屏的输出。
$ sudo apt-cache search zfs | less
同样,如果要安装Web服务器但不记得软件包名称,则apt-cache搜索可能会有所帮助。在这种情况下,可以使用与软件包说明相关的任何关键字来搜索软件包。例如,当我需要安装搜索引擎时,我发现它真的很有帮助,它是一个元搜索引擎,可以保护用户的隐私。但是,我不记得那个搜索引擎的名称,所以我输入了如下搜索词:
$ sudo apt-cache search “metasearch engine”
结果出现时,我找到了必需的搜索引擎名称“ Searx”。之后,我仅使用apt install searx命令进行安装。
同样,如果我们将.apt-cache show 一起使用,它将显示有关程序包的基本信息,包括版本、大小、依赖项、描述等。要查找有关某个软件包的信息,请使用show标志,如下所示:
$ apt-cache show <package-name>
替代方式
这是一些其他方法,也可以用于搜索系统中已安装或可安装的软件包。
使用apt Search搜索软件包
Apt搜索在较早的apt-get命令中与apt-cache搜索的apt等效。一些用户更喜欢apt搜索命令,因为它可以很好地显示结果。它显示软件包列表以及它们的最新可用版本和简短描述。apt搜索的最佳之处在于,它突出显示了程序包名称,并在不同程序包之间保留了一定的空间。另外,你将在已安装软件包的末尾看到“已安装”标签。
为了搜索软件包,请键入apt search,然后键入与软件包名称相关的关键字。
$ apt search keyword
例如,使用以下命令搜索Apache2软件包:
$ apt search apache2
使用aptitude搜索软件包
Aptitude是Linux中apt命令的前端,用于安装、升级和删除软件包。它也可以用于在Linux系统中搜索软件包。
在Linux中,默认情况下未安装Aptitude,因此你必须手动安装它。为此,可以执行以下安装命令:
$ sudo apt install aptitude
系统可能会通过为你提供“是/否”选项来请求确认。点击y,然后按Enter确认,之后Aptitude将安装在您的系统上。
现在,为了通过能力来搜索软件包,请键入apt search,然后键入与软件包名称相关的关键字。
$ aptitude search <keyword>
你将看到类似于以下内容的结果:
这就是全部!在本文中,我们学习了如何使用apt-cache search命令搜索软件包。此外,我们还学习了使用apt搜索和aptitude命令搜索软件包的方法。我希望它在你需要搜索系统中已安装或可安装的软件包时会有所帮助。