如何从命令行搜索可用的包?
我已经使用命令行’sudo apt-get install …’成功安装了一些软件包,当我事先知道那些软件包可用时。 但是,我如何搜索或获取存储库中可用内容的列表?
要按名称或描述搜索特定包:
从命令行,使用:
apt-cache search keyword
其中search关键字可以是包名称的全部或一部分,也可以是其描述中使用的任何单词。
例如, apt-cache search proxy
包括这两个包:
tiny proxy - 轻量级,非缓存,可选的匿名HTTP代理 tircd - 对twitter API的ircd 代理
注意:列表可能很长,因此您可以将输出管道输出到
less
以使其一次可以滚动一行或一个屏幕,即apt-cache search something | less
apt-cache search something | less
。
获取所有包的列表
apt-cache search .
如果您启用了X-forwarding或在桌面上,请使用Synaptic
Synaptic通常是一种更方便的方法,但至少需要一台X服务器(除非您运行的是桌面环境)。 如有必要,使用sudo apt-get install synaptic
。
-
通过X转发在ssh’d服务器上的突触:
-
在Ubuntu桌面上本地运行的Synaptic:
使用aptitude
, apt-cache
和apt
都会以不同的方式格式化输出。 (这些都不需要在搜索包时使用sudo
。)我更喜欢使用apt
来实现它的可读性。 它突出显示包名称并在不同包之间放置一个空格。 它还[installed]
列在已安装的每个软件包旁边。 用法:
apt search package-name
您还可以从命令行使用aptitude:
aptitude search xxxxxx
apt-cache命令行工具用于搜索apt软件包缓存。 简而言之,此工具用于搜索软件包,收集软件包的信息,还用于搜索可在Debian或基于Ubuntu的系统上安装的可用软件包。
要在安装之前找出软件包名称及其说明,请使用“搜索”标志。 对apt-cache使用“search”将显示具有简短描述的匹配包列表。 假设您想找出包’vsftpd’的描述,那么命令就是。
句法:
apt-cache search SearchTerm
$ apt-cache search vsftpd
可能的输出是:
vsftpd - lightweight, efficient FTP server written for security ccze - A robust, modular log coloriser ftpd - File Transfer Protocol (FTP) server yasat - simple stupid audit tool
要查找并列出以’vsftpd’开头的所有包,您可以使用以下命令。
$ apt-cache pkgnames vsftpd
您可能还希望通过更多甚至是grep来运行结果。 例如:
apt-cache search firefox | grep plugin
假设您要从终端执行所有这些操作,请使用以下命令:
首先,我建议您更新软件包索引文件,以便您要创建的存储库中的所有文件的列表是最新的
sudo apt-get update
然后在apt-cache
中使用“ 搜索正则表达式”函数,其中“正则表达式”代表正则表达式,并且是用于搜索的模式。 有关搜索模式的更多信息,您可以通过命令man 7 regex
或英语查找手动正则表达式(7)。 正则表达式变量等于。 就足够了。
apt-cache search .
以上将为您提供所有结果,但它不是任何特别有助于浏览的顺序。
所以最后我们可以使用sort -d
按字典顺序sort -d
并且一次只显示一个页面使用less
。
apt-cache search . |sort -d |less