É /etc/paths
lido por todos os shell executados no OS X? Por exemplo, se eu usar o zsh, ele será analisado /etc/path
para preencher $PATH
?
Qual é exatamente a sequência que o OS X segue para preencher $PATH
? Faz isso de maneira diferente dos outros Unices?
/etc/path
:). Isso não é algo padrão * nix, de modo que o arquivo provavelmente é chamado de um dos padrões. Tentegrep path /etc/bash.bashrc /etc/profile /etc/zsh/*
isso deve retornar a linha que chama/etc/path
.Respostas:
Os desenvolvedores do OSX implementaram sua própria maneira de configurar o $ PATH, que é diferente de todos os outros Unices, até onde eu sei. Eles usam um programa chamado
path_helper
que lerá/etc/paths
os arquivos/etc/path.d
e modificará o padrão do usuário de$PATH
acordo.De acordo com isso , o
$PATH
é definido dessa maneira apenas para shells de login. Provavelmente é por isso que o iTerminal inicia os shells de login por padrão (eu sempre me perguntei por que eles escolheram isso).De acordo com a mesma fonte,
path_helper
é executado/etc/profile
e/etc/csh.login
deve afetarbash
conchas de logincsh
conchas de loginzsh
shells de login (deve ler/etc/profile
)/etc/profile
que devem ser a maioria dos shells de login.fonte