Acredito que a resposta esteja clara quando você analisar a ordem lógica do que definiu em .bash_profile (que não funciona) em comparação a .profile (que funciona).
Aqui está seu .bash_profile :
export PATH="$PATH:/Users/[username]/bin:/Applications/MAMP/bin/php/php5.5.14/bin:/Applications/MAMP/bin/mysql"
E aqui está seu .profile :
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_PHP:$PATH"
A chave para resolver isso é observar onde você está definindo seus novos itens relacionados ao MAMP quando comparado com o padrão $PATH ; o pedido conta porque o shell irá atuar (coisa chave) o primeiro item que encontrar em sua lista de caminhos de busca do usuário .
Sabendo que você pode dividir o comportamento que está vendo assim:
- Na versão
.profile, você está definindo$MAMP_PHPcomo variável e, em seguida, prefixando ao início do$PATH. - Mas na versão
.bash_profilevocê está anexando essas coisas depois$PATH::/Applications/MAMP/bin/php/php5.5.14/bin:/Applications/MAMP/bin/mysql
Então, eu refiz o .bash_profile desse jeito para que funcione:
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_PHP:$PATH:/Users/[username]/bin"
Note como estou usando a convenção $MAMP_PHP de .profile - que é uma maneira legal de separar logicamente caminhos para olhos humanos - e como eu simplesmente defino esse valor para /Applications/MAMP/bin/php/php5.5.14/bin , já que não faço ideia quando esse MySQL caminho seria usado: /Applications/MAMP/bin/mysql .
Do meu ponto de vista usando a versão 2.1.3 do MAMP, não vejo um binário real mysql no caminho que você definiu. Tradicionalmente, isso estaria no diretório /Applications/MAMP/Library/bin/ junto com outros binários do núcleo MAMP. Então talvez seu .bash_profile deva ser ajustado assim:
export MAMP_BIN=/Applications/MAMP/Library/bin
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_BIN:$MAMP_PHP:$PATH:/Users/[username]/bin"
Além disso, esse /Users/[username]/bin parece desajeitado e específico demais para mim. Se você está mantendo um diretório ~/bin específico do diretório de usuários, você pode querer apenas configurá-lo para ~/bin desta forma:
export MAMP_BIN=/Applications/MAMP/Library/bin
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_BIN:$MAMP_PHP:$PATH":~/bin
Observe como não há aspas duplas ( " ) em torno da última :~/bin part; que permite que ~/ seja expandido corretamente para o diretório inicial do usuário. Dessa forma, você pode usar uma configuração .bash_profile como essa em qualquer conta de usuário em que o usuário tenha o diretório ~/bin .