apt 简明教程
apt(8) 简明教程。
apt update
更新和下载软件包信息。
apt upgrade
升级已安装的软件包到最新状态。不会移除已安装的软件包。比如 A 包的升级需要卸载 B,那么apt upgrade会忽略 A 的升级。
apt full-upgrade
完全升级软件包,会自动处理依赖冲突,比如删除旧的包、安装新依赖等。等价于apt-get dist-upgrade
apt install <pack>
安装指定软件包。
apt reinstall <pack>
重新安装指定软件包。
apt remove <pack>
删除指定软件包。默认情况下remove会保留配置文件。
apt purge <pack>
与remove类似,但purge还会删除配置文件,等价于apt remove --purge
apt autoremove
删除那些为了满足其他软件包的依赖关系而自动安装但现在不再需要的软件包。比如当你卸载了一个大软件,相关依赖没用了,这时autoremove可以帮你清理空间。
apt autopurge
与autoremove类似,但autopurge还会删除配置文件,等价于apt autoremove --purge
apt clean
默认情况下,apt 在安装软件时会把.deb安装包下载到/var/cache/apt/archives,这些缓存文件一方面可以帮助你在下次安装时避免重复下载,但随着时间推移可能会占用大量磁盘空间。apt clean将清除所有下载过的.deb安装包。
apt autoclean
与clean类似,但更温和,只清除那些已经过时、无效的.deb文件。
apt distclean
清理apt update的列表缓存。
apt search <pattern>
搜索指定包。等价于apt-cache search
apt-file find <pattern>
搜索软件包里面的文件。对于搜索特定命令由哪个软件包提供很有用,示例:
apt update && apt install apt-file -y
apt-file update
apt-file find -x 'bin/dig$'
过滤器
apt 有些过滤语法,可以筛选出特定状态的软件包,示例:
## 列出已安装软件包
apt list ?installed
apt list ~i
## 列出可升级软件包
apt list ?upgradable
apt list --upgradable
apt list ~U
## 包名匹配
apt list ?name(REGEX)
apt list ~nREGEX
## 匹配已安装的特定软件包
apt list '~i ~nREGEX'
apt list ~i | grep REGEX
apt list --installed | grep REGEX
## 列出软件包仓库中不存在/已过时的软件包
apt list ?obsolete
apt list ~o
## 一次性全部清除
apt purge ~o
## 列出未完全安装/已删除,但仅剩残留配置文件的软件包
apt list ?config-files
apt list ~c
## 一次性全部清除
apt purge ~c