我有一个相对成熟的 bash 安装脚本,用于在新安装的 Debian 上安装我的标准软件。它主要由apt-get install -f -y
线条组成。我在 Debain 8 中启动了它,最近在设置 Debian 9 时我注意到一些软件包名称发生了变化。如果我的脚本中的包名称仍然有效或名称已更改,是否有一种有效的方法来检查所有这些包?或者我必须手动检查它们?
答案1
您可以使用返回代码apt-cache show
(假设您已经apt update
先执行过)。
$ apt-cache show curl > /dev/null 2>&1; echo $?
0
$ apt-cache show foo > /dev/null 2>&1; echo $?
100
答案2
如果您使用的是 Debian 9 并且它有您想要的软件包,您可以使用转储它们dpkg
并完全忽略您的列表,
dpkg --get-selections > packages.txt
然后您可以使用以下命令将系统恢复到准确的配置:
dpkg --set-selections - < packages.txt
apt-get dselect-upgrade