APT 的全称是 Advanced Package Tool。最早的 APT 工具是
apt-get和apt-cache,简单来说,apt-get负责更新安装包状态, apt-cache 负责查询安装包状态,常用的命令有:apt-get update: 更新应用信息
apt-get install: 安装应用
apt-get remove:删除应用
apt-cache search:搜索应用
apt-cache show: 查询应用信息
apt-cache depends:查询应用依赖
有人要吐槽了,用两个命令来管理安装包好麻烦啊。为什么没有人尝试把这些功能都合并在同一个程序中?有的,这就是 
apt 了。由于apt就是设计用来替代apt-get和apt-cache的,所以apt-get和apt-cache常用的子命令apt都有,大概的对应关系如下:ㅤ  | apt-get | apt-cache | apt | 
Update package information  | apt-get update | N/A  | apt update | 
Install a package  | apt-get install | N/A  | apt install | 
Remove a package  | apt-get remove | N/A  | apt remove | 
Search for a package  | N/A  | apt-cache search | apt search | 
Show information about a package  | N/A  | apt-cache show | apt show | 
Show package dependencies  | apt-cache depends | N/A  | apt depends | 
有没有发现,从
apt-*命令迁移到apt命令,单纯的把apt-*换成apt就行了(要不然怎么都说程序员喜欢造轮子呢?)。但方便也是真的方便,因为敲命令的时候再也不用停下来想想,这个命令到底是用apt-get还是apt-cache了。我自己最常用的就是
apt命令,但需要注意的是在写 Dockerfile 的时候,推荐的是用apt-get命令。因为apt命令在早期版本的api和现代版本的还不太一样,可能会导致命令在有些基础镜像里面可以运行,有些却会报错。除了
apt之外,还有aptitude项目也在尝试用一个命令管理系统应用。在提供了所有常用管理命令的基础上,aptitude还提供了一个 GUI,并相比于apt,有着更强的应用依赖冲突处理能力。很多时候安装应用,遇到apt处理不了的依赖冲突,用aptitude会有意想不到的惊喜。