No Ubuntu, gostaria de mudar apenas os links sym. Parece que a nova maneira de fazer isso é update-alternatives
ou python-virtualenv
se você quiser seguir esse caminho. Confira as respostas aqui:
Plataforma: Ubuntu 12.10
Versão do Python instalada: 2.7.3 (com instalação do Ubuntu)
saída de comando ( which python
): usr/bin/python
recentemente eu instalei python2.6.6 (como alguns aplicativos não funcionam na versão 2.7.3)
saída de comando ( which python2.6
): usr/local/bin/python2.6
por padrão, o comando 'python' executa a versão padrão, por exemplo, 2.7.3
Meu requisito é definir a versão python2.6.6 como a padrão.
Obrigado
No Ubuntu, gostaria de mudar apenas os links sym. Parece que a nova maneira de fazer isso é update-alternatives
ou python-virtualenv
se você quiser seguir esse caminho. Confira as respostas aqui:
Você pode fazer isso com o seguinte comando, mas isso pode causar problemas.
sudo ln -sf /usr/local/bin/python2.6 /usr/bin/python
Se você executar o comando ls -al /usr/bin/python*
, deverá ver alguns links simbólicos redirecionando python
para a versão mais recente do python (2.7.X, no seu caso). Você pode redirecionar manualmente este symlink para qualquer versão que você goste (2.6.X, no seu caso):
sudo ln -s /usr/bin/python2.6 /usr/bin/python
Se você estiver usando um software de código aberto, sugeriria corrigir seus scripts problemáticos com um seletor de versões. Meio que:
#!/usr/bin/env bash # Build some *.pyc scripts out of xsd schemas ./generate_all_ds.sh && # Uses xsd files to build the *.py sources to be compiled python --version 2> python_version.foo && PYTHON_VERSION='cat python_version.foo | sed -e 's/Python //'' && rm -fv *.pyc && echo Will now execute \'pycompile synthetic_data.py ... tracked.py -V $PYTHON_VERSION -v \&\&\' && pycompile synthetic_data.py ... tracked.py -V $PYTHON_VERSION -v && sleep .001 && # Sorry cant remember why, wouldnt surprise me not existing reason at all rm python_version.foo && echo 'Compilation batchjob completed successfully'
Se isso não mostrar o quadro geral, pense em como criar programas que se comportem de acordo com os intérpretes que cada host em particular possui.
Este é um software antigo, hoje em dia eu teria pedido mktemp
ao usar o foofiles.
Deus me ajude agora.
Em vez de mapear novamente as dependências internas do python, altere-as temporariamente e execute os comandos. Faça:
alias python=/usr/bin/python2.7 (or any python version/path)
Uma vez, o terminal é fechado, fazendo python --version
fornecer a saída anterior.