Por que o comando não termina?

-1

Eu adicionei isso ao .bashrc

alias a='ap update && ap dist-upgrade -y && do-release-upgrade -d && ap check && ap autoremove -y && ap autoclean'

Para que eu possa executar o comando longo apenas inserindo a

mas o comando pára após do-release-upgrade -d e quando eu removê-lo do alias e executar a novamente o comando funciona.

alias ap='apt-get'
    
por user289256 07.06.2014 / 08:02

2 respostas

2

Por onde começar?

  • ap não é um comando. Você quer apt-get .. Se ap for um alias - suspiro - veja meu ponto final.

  • Você entende o que o do-release-upgrade -d faz? É a ferramenta usada para atualizar o Ubuntu para uma nova versão (neste caso, uma versão de desenvolvimento). Ele só vai funcionar uma vez a cada 6 meses e vai mantê-lo preso ao desagradável, enferrujado, gotejante, sangramento que é o desenvolvimento do Ubuntu. Nunca use isso (especialmente não regularmente) em um computador que você possa precisar em um determinado ponto.

  • A resposta direta à sua pergunta: do-release-upgrade -d sairá do código 1 se não houver nada para atualizar. Como acima, ele só irá disparar código 0 (sucesso) duas vezes por ano. && continua apenas quando o comando anterior sai do código 0, então você quer:

    • ; continue seja o que for ou, mais provavelmente,
    • || o oposto de && , executado na falha.
  • Mais do que isso, do-release-upgrade é interativo quando há algo para atualizar.

  • A -y bandeira é perigosa . Ele pode - não, irá - arruinar seu dia pelo menos uma vez. Isso é 100 × mais verdadeiro em uma versão de desenvolvimento (que parece que você está tentando manter). Você deve querer todas as oportunidades para evitar que o Apt remova acidentalmente todos os seus pacotes.

  • Por que um alias? Você colocou uma centena de comandos em uma linha, por que não escreve um script chamado a e o coloca em ~/bin/ (crie-o se ele não existir e execute source ~/.profile para atualizar seu $ PATH ).

  • E por que você está fazendo nada disso? Se você quer atualizações automáticas, por que você não usa apenas uma das muitas ferramentas existentes que faz isso para você? Shazaam , agora você não precisa de um script.

  • E, finalmente, se você estiver realmente tão entediado em digitar comandos que esteja usando o alfabeto inteiro, talvez seja hora de aprender a apertar a tecla guia com o seu pequeno dedo quando você está digitando. Ele será preenchido automaticamente o máximo possível (e também funcionará em muitos comandos; experimente com apt-get ).

por Oli 07.06.2014 / 10:10
1

Quando você faz uma atualização de lançamento, muitos problemas podem ocorrer: o computador pára brutalmente, o acesso à internet pára, ... É possível ter uma atualização incompleta ou algum problema com dependências.

  • Caso você tenha erros de dependência, tente estes comandos:

    sudo dpkg --configure -a

    e depois:

    sudo apt-get install -f

  • Se sua atualização foi interrompida ou um problema importante ocorreu, você pode tentar este comando:

    sudo dpkg-reconfigure -phigh -a

Isso irá reinstalar e reconfigurar todos os pacotes necessários para o upgrade da versão. Por favor, note que isto pode ser muito longo, até 1 hora.

    
por Tharindu 07.06.2014 / 08:08