Evitar que a lista de apt cause erro [duplicado]

0

Estou tentando detectar se um pacote está instalado em um script bash usando o seguinte, mas o script continua a gerar erros e impede que nada seja executado.

Existe uma opção para apt que diz para NÃO lançar um erro quando um pacote não está na lista?

pkgExists=$(apt list "azure-cli" | grep "azure-cli" -s)
    
por TugboatCaptain 13.09.2017 / 11:29

1 resposta

2

Se um pacote não estiver na lista, apt list mostra Listing... Done e sai. Se você tentar canalizar sua saída como você faz, no entanto, ele lança um aviso claro:

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Use dpkg-query --list , por exemplo:

dpkg-query --list "azure-cli" && echo "exists" || echo "doesn't exist"
    
por 13.09.2017 / 11:47