2017-01-05 7 views
0

.bash_profile Мои занимает много времени для загрузки, и я сузил преступник вниз по этим двух линиям:Есть ли способ ускорить вызов, чтобы заварить --prefix в моем .bash_profile?

export PATH="$(brew --prefix homebrew/php/php55)/bin:$PATH" 
. "$(brew --prefix nvm)/nvm.sh" 

Похоже, что проблема brew --prefix делает вызов доморощенного серверу для получения значений из этих переменных, хотя я не уверен на 100%. Вот почему эти два звонка занимают так много времени? (Я подтвердил, что это не звонок nvm.sh, который занимает много времени).

Возможно, есть способ кэшировать результаты этих вызовов? Я знаю, что могу просто записать код brew --prefix, но я бы предпочел не делать то, что произойдет, если это изменится в какой-то момент ... или это не проблема?

+0

Как долго 'заварить --prefix' взять на вашей машине, то ? Он близок к моменту. –

+0

@MarkSetchell 'brew --prefix' почти мгновенно. Это другие команды, такие как 'brew --prefix homebrew/php/php55', которые требуют времени ... предположительно потому, что им нужно попасть на сервер доморощенного. – YPCrumble

+0

Как долго они могут пройти? –

ответ

1

По моему опыту, пути достаточно согласованы после установки пакетов, поэтому должно быть хорошо, чтобы жестко закодировать вывод. Я сделал это в своей конфигурации без каких-либо проблем.

Просто чтобы быть в безопасности, вы могли бы сделать что-то подобное, что бы использовать brew --prefix только если жёстко каталог не существует:

if [ -d "/usr/local/opt/php55/bin" ]; then 
    export PATH="/usr/local/opt/php55/bin:$PATH" 
else 
    export PATH="$(brew --prefix homebrew/php/php55)/bin:$PATH" 
fi