假设我通过在基于 Debian 的系统上安装一个软件包sudo aptitude install mypackage
。假设包很大,下载和安装需要很长时间。
当我注意到我想在调用该命令后安装另一个包时,我必须等到第一个包完全安装。
是否可以使 aptitude 在第一个包完成后自动开始安装第二个包?
答案1
您可以列出多个要同时安装的软件包:
aptitude install package1 package2
如果您确实关心它们的安装顺序(您几乎肯定不关心,因为 aptitude 自动考虑依赖性和其他微妙之处),或者正在寻找更通用的解决方案,请执行以下操作:
aptitude install package1 && aptitude install package2
&&
如果前一个命令成功(返回退出状态 0),逻辑 AND ( ) 运算符将仅执行第二个命令。
如果您甚至问如何做到这一点后您最初执行了该命令,请尝试另一个终端:
aptitude-after() {
printf '%s\n' "Waiting for current aptitude operations to finish"
while pgrep -x aptitude >/dev/null 2>&1; do
sleep 10
done
printf '%s\n' "Done, running new instance of aptitude."
aptitude "$@"
}
将其运行为aptitude-after install mypackage2
.它将等待所有当前的 aptitude 实例完成。