如何在 Debian、Ubuntu 中使用 apt-cache 命令
创始人
2024-03-02 06:01:23
0次

使用 apt-cache 命令,你可以在本地 APT 缓存中搜索软件包的详细信息。在本教程中学习使用 apt-cache 命令。

apt-cache 命令是用来干什么的?

APT 包管理器工作在软件包元数据的本地缓存上。元数据通常由包名、版本、描述、依赖关系、仓库和开发者等信息组成。通过 apt-cache 命令,你可以查询这个本地 APT 缓存并获得相关信息。

你可以搜索一个包的可用性、它的版本号、它的依赖关系等等。我将通过实例告诉你如何使用 apt-cache命令。

APT 缓存的位置是 /var/lib/apt/lists/ 目录。缓存哪些仓库元数据取决于你的源列表中 /etc/apt/sources.list 文件中添加的仓库,以及位于 /etc/apt/sources.list.d 目录下的额外仓库文件。

令人惊讶的是,apt-cache 并不能清除 APT 缓存。为此,你必须使用 apt-get clean 命令。

不用说,APT 打包系统是在 Debian 和基于 Debian 的 Linux 发行版上使用的,比如 Ubuntu、Linux Mint、Elementary OS 等。你不能在 Arch 或 Fedora 上使用它。

使用 apt-cache 命令

就像其他 Linux 命令一样,apt-cache 也有一些可用的选项,你可以随时参考它的手册页来了解这些选项。

然而,你可能并不需要使用所有的选项。这就是为什么我在本教程中只向你展示 apt-cache 命令中最常见和最有用的例子。

始终更新

更新本地 APT 缓存以与远程仓库同步是一个好主意。如何做到这一点呢?你可以使用命令:

sudo apt update

搜索软件包

apt-cache 命令最常见的用途是查找软件包。你可以使用一个正则表达式来搜索本地 APT 缓存中的包。

apt-cache search package_name

默认情况下,它会在软件包的名称和描述中查找搜索关键词。它按字母顺序显示匹配的软件包及其简短的描述。

你也可以缩小搜索范围,只在软件包名称中查找搜索词。

apt-cache search --names-only package_name

如果你想知道所有匹配软件包的完整细节,你可以使用 --full 标志。

获取详细的包装信息

如果你知道确切的软件包名称(或者你已经成功地通过搜索找到了它),你可以得到软件包的详细元数据信息。

apt-cache show package_name

你可以看到软件包元数据中的所有细节,比如名称、版本、开发者、维护者、仓库、长短描述、软件包大小甚至是校验和。

还有一个选项 showpkg 可以显示软件包的名称、版本、正向和反向依赖关系等信息。

apt-cache showpkg package_name

apt-cache 的策略

这是 apt-cache 命令中很少使用的一个选项。policy 选项可以帮助你调试与 preference 文件相关的问题。

如果你指定了软件包的名称,它将显示该软件包是否已经安装,在哪个版本的仓库中可用,以及它的优先级。

默认情况下,每个已安装的软件包版本的优先级为 100,未安装的软件包的优先级为 500。同一软件包可能有多个不同优先级的版本。APT 会安装优先级较高的版本,除非安装的版本较新。

如果不理解这个部分,也没关系。对于一个普通的 Linux 用户来说,会极少纠结于这么深的软件包管理知识。

检查软件包的依赖关系和反向依赖关系。

你可以在安装之前(甚至在安装之后)检查一个包的依赖关系。它还会显示所有可能满足依赖关系的软件包。

apt-cache depends package

你也可以通过 apt-cahce 检查反向依赖关系来检查哪些包是依赖于某个包的。

坦白说,看到 Ansible 这样的 DevOps 工具对 Cowsay 这样有趣的 Linux 命令有依赖性,我也很惊讶。我想可能是因为在安装 Ansible之后,它会在节点上显示一些信息。

检查未满足的依赖性

你可能会被 Ubuntu 中未满足的依赖问题所困扰,其他 Linux 也有类似问题。apt-cache 命令提供了一个选项来检查系统中各种可用软件包的所有未满足的依赖关系。

apt-cache unmet

结论

你可以用 apt-cache 命令列出所有可用的软件包。输出结果会很庞大,所以我建议将其与 wc 命令 结合起来,得到可用软件包的总数,就像这样:

apt-cache pkgnames | wc -l

你是否注意到你不需要成为 root 用户就可以使用 apt-cache 命令?

较新的 apt 命令也有一些与 apt-cache 命令相对应的功能选项。由于 apt 比较新,所以在脚本中还是首选使用 apt-get 及其相关的 apt-cache 等命令。

希望你觉得本教程对你有帮助。如果你对上面讨论的任何一点有疑问或者有改进的建议,请在评论中告诉我。


via: https://itsfoss.com/apt-cache-command/

作者:Abhishek Prakash 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

apt

相关内容

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...