我安装了多个版本的PHP,在平常的开发中,我通常使用通过homebrew安装的PHP 5.5.x版本。
在fish shell中
which php & php --version
=> /usr/local/bin/php
=> PHP 5.5.8 (cli) (built: Jan 16 2014 15:58:25)
路径正确。
我的问题是,当我开发Drupal时,我使用MAMP作为捆绑的lamp堆栈,而MAMP有其自己包含的php版本。我的问题是,在使用Drush与Drupal时,我无法像在bash中那样设置PHP可执行路径。我只想让drush使用捆绑的PHP版本/可执行文件。
在bash中,我可以这样做:
# Set Drush root to MAMP PHP
export DRUSH_PHP=/Applications/MAMP/bin/php/php5.5.3/bin/php
但这在 fish-shell 中不起作用,我尝试过以下方法(没有成功):
fish 配置文件位置:~/.config/fish/config.fish
set -x DRUSH_PHP=/Applications/MAMP/bin/php/php5.5.3/bin/php
如果我使用 drush status
命令运行 fish shell,我总是得到以下输出:
Drupal version : 7.26
Site URI : http://default
Database driver : mysql
Database username : root
Database name : dev-db
Default theme : garland
Administration theme : garland
PHP executable : /usr/local/bin/php
PHP configuration : /usr/local/etc/php/5.5/php.ini
PHP OS : Darwin
Drush version : 6.2.0
Drush configuration :
Drush alias files :
Drupal root : /Applications/MAMP/htdocs/Sandbox/dev
Site path : sites/default
File directory path : sites/default/files
当我在Bourne Shell中运行相同的命令时,我得到了正确的设置:
Drupal version : 7.26
Site URI : http://default
Database driver : mysql
Database username : root
Database name : dev-db
Database : Connected
Drupal bootstrap : Successful
Drupal user : Anonymous
Default theme : bartik
Administration theme : seven
PHP executable : /Applications/MAMP/bin/php/php5.5.3/bin/php
PHP configuration : /Applications/MAMP/bin/php/php5.5.3/conf/php.ini
PHP OS : Darwin
Drush version : 6.2.0
Drush configuration :
Drush alias files :
Drupal root : /Applications/MAMP/htdocs/Sandbox/dev
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : /Applications/MAMP/tmp/php
那么,在 fish shell 中如何设置导出路径到 DRUSH_PHP?