Pergunta

Recentemente desinstalei o Xcode 4.2 e reinstalei o Xcode 4.3.1.As ferramentas de linha de comando estão instaladas.Em seguida, instalei o MacPort usando imagens de disco “dmg” para Lion em macports.org.Desde então, eu estava ficando sudo: port: command not found depois de cada uso do porto, segui esse e esta postagem para criar um .bash_profile arquivo (não estava presente anteriormente) e, em seguida, coloquei o seguinte, mas sem sucesso.

export PATH=$PATH:/opt/local/bin
export MANPATH=$MANPATH:/opt/local/share/man
export INFOPATH=$INFOPATH:/opt/local/share/info 

Seguindo esta postagem

➜  ~ git:(master) ✗ rvm install 1.8.7 --with-openssl-dir=/opt/local
You requested building with '/usr/bin/gcc-4.2' but it is not in your path.
➜  ~ git:(master) ✗ vi .rvmrc 

rvm_archflags="-arch x86_64"

export CC="/usr/bin/gcc-4.2"

export CFLAGS="-O2 -arch x86_64"
export LDFLAGS="-L/opt/local/lib"
export CPPFLAGS="-I/opt/local/include"

Renomeando .bash_profile para .profile

➜  ~ git:(master) ✗ vi .bash_profile
➜  ~ git:(master) ✗ mv .bash_profile .profile
➜  ~ git:(master) ✗ mv .profile              
usage: mv [-f | -i | -n] [-v] source target
       mv [-f | -i | -n] [-v] source ... directory
➜  ~ git:(master) ✗ mv -f .bash_profile .profile
mv: rename .bash_profile to .profile: No such file or directory
➜  ~ git:(master) ✗ port
zsh: correct 'port' to 'pr' [nyae]? n
zsh: command not found: port
➜  ~ git:(master) ✗ which port
port not found
➜  ~ git:(master) ✗ 

.profile contente:

export PATH=$PATH:/opt/local/bin
export MANPATH=$MANPATH:/opt/local/share/man
export INFOPATH=$INFOPATH:/opt/local/share/info
Foi útil?

Solução

Certifique-se de excluir ~/.bash_profile e ~/.bash_login para que .profile possa funcionar.Isso funcionou para mim http://johnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-x/

Outras dicas

Primeiro, pode ser necessário editar o PATH do seu sistema

sudo vi /etc/paths

Adicione 2 linhas a seguir:

/opt/local/bin
/opt/local/sbin

Reinicie seu terminal

Você poderia tentar obter seu arquivo de perfil para atualizar seu ambiente:

$ source ~/.profile

Encontrei a resposta em o site oficial

$ vi ~/.profile

# add the following line
export PATH=/opt/local/bin:/opt/local/sbin:$PATH

E agora reinicie o terminal ou digite source !$ (equivalente a source ~/.profile)

se você usar zsh.por favor, adicione uma string fluida à linha 'export PATH="..."' no arquivo '~/.zshrc'

:/opt/local/bin:/opt/local/sbin

Na minha máquina, a porta está em /opt/local/bin/port - tente digitar isso sozinho em um terminal.

Se você acabou de instalar o Macports, acabou de correr e deve funcionar

source ~/.bash_profile

O que você ganha correndo which port como sua conta de usuário normal?Experimente em um terminal recém-aberto.Tente novamente após renomear .bash_profile para .profile.Você pode correr port como um usuário normal, mesmo sem argumentos?

Você pode simplesmente adicionar a linha:

source ~/.profile

Na parte inferior do seu arquivo shell rc - se você estiver usando o bash, então seria o seu ~/.bash_profile se você estiver usando o zsh, seria o seu ~/.zshrc

Em seguida, abra uma nova janela do Terminal e digite ports -v. Você verá uma saída semelhante a esta:

~ [ port -v                                                                                                              ] 12:12 pm
MacPorts 2.1.3
Entering interactive mode... ("help" for help, "quit" to quit)
[Users/sh] > quit
Goodbye

Espero que ajude.

pode haver uma situação em que sua máquina seja gerenciada pelo Puppet ou algo assim.Então, alterar o arquivo root .profile ou .bash_rc não funciona.Portanto, você pode adicionar o seguinte ao seu arquivo .profile.Depois disso você pode usar “mydo” em vez de “sudo”.Funciona perfeitamente para mim.

function mydo() {
    echo Executing sudo with: "$1" "${@:2}"
    sudo $(which $1) "${@:2}"
}

Visite minha página: http://www.danielkoitzsch.de/blog/2016/03/16/sudo-returns-xyz-command-not-found/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top