Você pode usar o código de retorno de apt-cache show
(supondo que você tenha executado apt update
primeiro).
$ apt-cache show curl > /dev/null 2>&1; echo $?
0
$ apt-cache show foo > /dev/null 2>&1; echo $?
100
Eu tenho um script de instalação bash relativamente crescido que eu uso para instalar meu software padrão em novas instalações do Debian. Consiste principalmente em apt-get install -f -y
linhas. Eu iniciei no Debain 8 e recentemente, ao configurar um Debian 9, notei que alguns nomes de pacotes foram alterados. Existe uma maneira eficiente de verificar todos esses pacotes se o nome do pacote no meu script ainda é válido ou o nome foi alterado? Ou preciso checá-los manualmente?
Se você está no Debian 9 e tem os pacotes que você quer, você pode copiá-los usando dpkg
e ignorar sua lista completamente,
dpkg --get-selections > packages.txt
Você pode restaurar o sistema para a configuração exata com
dpkg --set-selections - < packages.txt
apt-get dselect-upgrade