Por que a “exportação” não sobrescreve os valores existentes?

0

Por que o export python=/usr/local/bin/python2.7 não está mudando o caminho para python ?

Estou confuso com o seguinte:

$ which python
/usr/bin/python
$ export python=/usr/local/bin/python2.7
$ which python
/usr/bin/python

Estou usando o OSX v10.12.

    
por Richard 05.09.2017 / 15:27

1 resposta

5

O programa which determina o caminho dos comandos do shell.

O que você fez na segunda instrução é definir uma variável chamada python .

Comandos e variáveis do shell são coisas completamente diferentes.

O que você gostaria de usar é um alias.

alias python="/usr/local/bin/python2.7"

Note que (exceto em zsh ou tcsh , ou se o seu which é em si uma função shell que invoca o GNU which , como recomendado pelo seu manual), which não mostrará o alias , enquanto por exemplo type python será.

    
por 05.09.2017 / 15:30