Eu estraguei minha variável de caminho e agora alguns aplicativos executados geram erros dizendo Comando não encontrado (erro 127) para comandos como data e suspensão . Esses comandos funcionam bem quando executados diretamente no shell.
Acho que isso tem algo a ver com uma variável $ PATH malformada e preciso saber como redefini-la. Excluí os arquivos ~ / .bashrc , ~ / .bash_profile , /etc/bash.bashrc e ~ / .bashrc e ~ / .profile .
Que outros arquivos podem conter meu $ PATH ? Existe alguma maneira mais simples de redefinir o caminho do que cavar na infinidade de arquivos que podem conter meu caminho?
Observe que esse problema de caminho é apenas com meu usuário. Fiz um usuário de teste no meu sistema e o caminho estava bom, de volta ao normal.
UPDATE: Obrigado. Não sei qual dos arquivos excluídos o fez, mas as coisas estão funcionando novamente. Vocês fizeram o que os 'Especialistas' não puderam. E sim, Chris, você estava certo. As personalizações 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 essa prefpane chamada 'RCEnvironment', e eu havia entrado em um caminho com aspas e: PATH. Não sei se é necessário aspas e não substitui: $ PATH, de modo que provavelmente é a raiz do erro. Eu esqueci que até tinha esse painel!
Respostas:
Se você tiver um arquivo ~ / .MacOSX / environment.plist, verifique se ele fornece um valor PATH padrão.
Se estiver no formato XML (as listas podem estar em vários formatos), você poderá editar com qualquer editor de texto. Verifique
plutil -lint ~/.MacOSX/environment.plist
se você editá-lo manualmente.Ou, você pode usar comandos como padrões ou PlistBuddy para fazer modificações controladas nos arquivos plist XML ou 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
):Isso substituirá o PATH padrão definido quando o shell for iniciado (o primeiro
PATH=
não é usado$PATH
, portanto, sempre será iniciado apenas com o que você especificar).Apenas um dos arquivos o 'login' nunca vai ser utilizado (o primeiro que existe e é legível de
~/.bash_profile
,~/.bash_login
e~/.profile
será usado)..profile
é para compatibilidade retroativa com outros shells - se você o usar, mantenha-o livre de sintaxe específica para o bash . Se você escolher.bash_login
or.bash_profile
(eles são funcionalmente equivalentes, exceto os nomes), use uma linha[[ -e ~/.bashrc -a -r ~/.bashrc ]] && source ~/.bashrc ]]
próxima ao topo para que os shells de login também obtenham as personalizações feitas no seu.bashrc
.Se você deseja que todas as instâncias do bash tenham o mesmo PATH, use
.bashrc
. Se você costuma modificar interativamente o PATH de um único shell na linha de comando e deseja usar esse PATH modificado em subshells (casos que provavelmente não são muito comuns), coloque as instruções em um dos arquivos de 'login' . Escolha apenas um dos arquivos de login e use-o.fonte
1.Abra seu terminal
2.Você pode primeiro verificar o seu atual
$PATH
, digiteao terminal
3.Se o
$PATH
terminal devolvido é o caminho que você deseja, então você é bom; caso contrário, digitee digite
e digite
, você encontrará uma abertura EditText, agora digite o caminho que deseja naquele EditText; Por exemplo, digite
(que é o padrão
$PATH
para o mac, considerando que você deseja redefinir o arquivo$PATH
para que você provavelmente deva digitar isso), salve-o e feche o EditText e feche o Terminal.4.Agora, você já alterou
$PATH
ou redefiniu para o padrão do mac$PATH
!fonte
touch
é necessário? Além disso, como você está fechando o Terminal de qualquer maneira, por que executar aexport
linha de comando, em vez de apenas adicioná-la a~/.bash_profile
(queexport
também precisa ) e terminar com isso? (Alternativamente, executadosource ~/.bash_profile
para aplicar as alterações para a janela actual.)As
rc/profile
edições de Chris Johnson mostradas também funcionam bem/etc/profile
.Acabei de anexar:
no meu
/etc/profile
arquivo no Mac OS X 10.9 Mavericks para concluir a instalação do MariaDB (que funciona como um ótimo substituto para o MySQL).fonte
Se você usa o ZSH - a variável path parece se recuperar felizmente quando você reinicia a sessão do terminal.
https://github.com/robbyrussell/oh-my-zsh
https://www.iterm2.com/
fonte