Como faço para redefinir a variável $ PATH no Mac OS X?

15

Eu estraguei minha variável de caminho, e agora alguns aplicativos que executo geram erros dizendo Comando não encontrado (erro 127) para comandos como data e dormir . Esses comandos funcionam bem quando executados diretamente no shell.

Suponho que isso tenha algo a ver com uma variável $ PATH malformada e precise saber como redefini-la. Eu deletei os arquivos ~ / .bashrc , ~ / .bash_profile , /etc/bash.bashrc , e ~ / .bashrc e ~ / .profile .

Quais outros arquivos podem conter meu $ PATH ? Existe alguma maneira mais simples de redefinir o caminho do que cavar na miríade de arquivos que poderiam manter meu caminho?

Note que este problema de caminho é apenas com o meu usuário. Eu fiz um usuário de teste no meu sistema e o caminho estava bom, de volta ao normal.

ATUALIZAÇÃO: Obrigado. Eu não sei qual dos arquivos que eu deletei, mas as coisas estão funcionando novamente. Vocês fizeram o que os "especialistas" não conseguiram. E sim, Chris, você estava certo. As personalizações do PATH que fiz foram em bash_login. Mas de alguma forma funcionou sem eu excluir essas personalizações. Eu acho que pode ter sido porque eu estava usando este prefpane chamado 'RCEnvironment', e eu tinha inserido um caminho com aspas e: PATH nele. Eu não sei se são necessárias aspas, e isso não substitui: $ PATH, então essa provavelmente é a raiz do erro. Eu esqueci que eu tive esse prefpane!

    
por Neil 19.03.2010 / 20:16

4 respostas

18

Se você tiver um arquivo ~ / .MacOSX / environment.plist, verifique se ele fornece um valor PATH padrão.

Se estiver no formato XML (as cópias podem estar em vários formatos), você pode editar com qualquer editor de texto. Verifique com plutil -lint ~/.MacOSX/environment.plist se você editá-lo manualmente.

Você também pode usar comandos como padrões ou PlistBuddy para fazer modificações controladas em XML ou arquivos plist formato binário.

Você sempre pode definir seu próprio PATH em qualquer um dos arquivos de inicialização do seu shell.

Coloque algo como o seguinte nos arquivos de inicialização do seu shell ( .bashrc ou .bash_profile / .bash_login / .profile ):

PATH=/usr/bin:/bin:/usr/sbin:/sbin
export PATH

# add custom, local installations to PATH
PATH=/usr/local/bin:/usr/local/sbin:"$PATH"

# add MacPorts to PATH
PATH=/opt/local/bin:/opt/local/sbin:"$PATH"

Isso substituirá qualquer PATH padrão que esteja definido quando o shell for iniciado (o primeiro PATH= não usa $PATH , portanto, ele sempre começará apenas com o que você der a ele).

Apenas um dos arquivos de "login" será usado (o primeiro que existe e pode ser lido de ~/.bash_profile , ~/.bash_login e ~/.profile será usado). .profile é para compatibilidade com outros shells - se você usá-lo, mantenha-o livre da sintaxe específica de bash . Se você usar .bash_login ou .bash_profile (eles são funcionalmente equivalentes, exceto os nomes), use uma linha como [[ -e ~/.bashrc -a -r ~/.bashrc ]] && source ~/.bashrc ]] próximo ao topo para que os shells de login também obtenham as personalizações feitas em .bashrc . / p>

Se você quiser que todas as instâncias de bash tenham o mesmo PATH, use .bashrc . Se você costuma se ver interativamente modificando o PATH de um único shell na linha de comando e quer usar aquele PATH modificado em subshells (um caso que provavelmente não é muito comum), então você deve colocar as instruções em um dos arquivos de 'login' . Escolha apenas um dos arquivos de login e use-o.

    
por 19.03.2010 / 21:13
5

1.Abra o seu terminal

2.Pode primeiro verificar seu atual $PATH , tipo

echo $PATH

para terminal

3. Se o $PATH que o terminal devolveu for o caminho que você quer, então você é bom; se não, digite

export PATH=/usr/bin:/bin:/usr/sbin:/sbin

, digite

touch ~/.bash_profile

e digite

open ~/.bash_profile

, você então encontrará um EditText aberto, agora digite o caminho que você deseja naquele EditText; Por exemplo, digite

PATH=/usr/bin:/bin:/usr/sbin:/sbin

(que é o padrão $PATH para mac, considerando que você deseja redefinir o $PATH , então você provavelmente deve digitar isso), salve-o e feche o EditText, feche o Terminal.

4.Agora você já alterou seu $PATH ou redefiniu para o padrão do Mac $PATH !

    
por 16.05.2015 / 05:25
1

As edições de rc/profile de Chris Johnson mostradas também funcionam bem em /etc/profile .

Acabei de anexar:

export PATH="/usr/local/mariadb/bin:$PATH"

para o meu arquivo /etc/profile no Mac OS X 10.9 Mavericks para concluir a instalação do MariaDB (que funciona como uma ótima substituição para o MySQL).

    
por 25.10.2013 / 19:54
0

Se você usa ZSH - a variável path parece, felizmente, se recuperar quando você reinicializa sua sessão de terminal.

link

link

    
por 15.05.2017 / 02:28