Inicia a instalação de um pacote, quando o trabalho está terminado

2

Suponha que eu instale um pacote em um sistema baseado no debian via sudo aptitude install mypackage . Suponha que o pacote seja grande e demore muito para fazer o download e instalá-lo.

Quando percebo que quero instalar outro pacote depois de invocar esse comando, tenho que esperar até que o primeiro pacote seja completamente instalado.

É possível fazer com que o aptitude inicie automaticamente o segundo pacote, depois que o primeiro estiver pronto?

    
por student 09.11.2012 / 17:59

1 resposta

4

Você pode listar vários pacotes para instalar de uma só vez:

aptitude install package1 package2

Se você realmente se preocupa com a ordem em que eles estão instalados (você quase não o faz, pois o aptitude leva em conta dependências e outras sutilezas automaticamente), ou está procurando por uma solução mais geral, faça algo como o seguinte:

aptitude install package1 && aptitude install package2

O operador lógico AND ( && ) executará apenas o segundo comando se o precedente tiver sido bem-sucedido (retornou o status de saída 0).

Se você está perguntando como fazer isso mesmo após você inicialmente fez o comando, tente este outro terminal:

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 "$@"
}

Execute como aptitude-after install mypackage2 . Esperará que todas as instâncias atuais do aptitude sejam concluídas.

    
por 09.11.2012 / 18:01

Tags