Я считаю, что ответ ясен, когда вы посмотрите на логический порядок того, что вы установили в .bash_profile (который не работает) по сравнению с .profile (который работает).
Вот ваш .bash_profile:
export PATH="$PATH:/Users/[username]/bin:/Applications/MAMP/bin/php/php5.5.14/bin:/Applications/MAMP/bin/mysql"
А вот и твой .profile:
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_PHP:$PATH"
Ключ к решению этой проблемы - посмотреть, где вы устанавливаете новые элементы, связанные с MAMP, по сравнению со стандартным $PATH ; Порядок считается, потому что оболочка будет действовать (ключевая вещь) первым элементом, который она найдет в своем списке путей поиска пользователя.
Зная, что вы можете разбить поведение, которое вы видите, вот так:
- В версии
.profile вы устанавливаете $MAMP_PHP как переменную и затем добавляете ее к началу $PATH .
- Но в версии
.bash_profile вы добавляете этот материал после $PATH :/Applications/MAMP/bin/php/php5.5.14/bin:/Applications/MAMP/bin/mysql
Поэтому я бы переделал .bash_profile вот так, чтобы он заработал:
export MAMP_PHP=/Applications/MAMP/bin/php/php5.5.14/bin
export PATH="$MAMP_PHP:$PATH:/Users/[username]/bin"
Обратите внимание, как я использую соглашение $MAMP_PHP из .profile что является хорошим способом логически разделить пути для человеческих глаз, и как я просто устанавливаю это значение в /Applications/MAMP/bin/php/php5.5.14/bin так как я понятия не имею, когда будет использоваться этот путь MySQL: /Applications/MAMP/bin/mysql .
С моей точки зрения, используя MAMP версии 2.1.3, я не вижу фактического двоичного файла mysql в указанном вами пути. Традиционно это будет в /Applications/MAMP/Library/bin/ вместе с другими двоичными файлами MAMP. Поэтому, возможно, ваш .bash_profile должен быть настроен так:
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"
Кроме того, то, что /Users/[username]/bin кажется клёвым и слишком специфичным для меня. Если вы поддерживаете директорию пользователя, специфичную для ~/bin вы можете просто установить ~/bin следующим образом:
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
Обратите внимание, что вокруг последней части " нет двойных кавычек (:~/bin), что позволяет ~/ правильно расширяться до домашнего каталога вашего пользователя. Таким образом, вы можете использовать чистую настройку .bash_profile , например, для любой учетной записи, где у пользователя есть каталог ~/bin .