Edit : Não use essa dica, veja o comentário abaixo de @areski para uma maneira muito melhor e mais segura de fazer isso. Não tão fogo e esquecer quanto minha dica abaixo, mas uma prática significativamente mais robusta.
pip install -U $(pip freeze | awk '{split($0, a, "=="); print a[1]}')
A -U
opção (ou --upgrade
) para instalação do pip pode ter vários argumentos. O subshell encontra todos os pacotes python instalados usando pip freeze
e canaliza os resultados para awk que preenche um array a com cada nome de pacote dividido na ==
string.
O elemento [1] em a é o nome de cada pacote.
Acho isso muito útil para atualizar todos os pacotes em vários python virtualenvs.
Respostas relacionadas:
Achatar uma lista de listas em uma linha em Python