OSX 尝试安装自制程序时不遵守 PATH php
OSX not respecting PATH when trying to install homebrew php
我已经在 OSX high sierra 上安装了 homebrew-php php72。奇怪的是,当我 运行 php 我仍然得到预安装的 php 7.1 - 更奇怪的是,当我 运行 which php
它告诉我它将使用来自 /usr/local/bin
的自制版本不是 /usr/bin
中的预装版本。我没有设置别名。
一些shell输出:
$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/sbin:/sbin:/opt/X11/bin
$ which php
/usr/local/bin/php
$ php --version
PHP 7.1.7 (cli) (built: Jul 15 2017 18:08:09) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
$ /usr/local/bin/php --version
PHP 7.2.3 (cli) (built: Mar 8 2018 10:30:06) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.3, Copyright (c) 1999-2018, by Zend Technologies
$ /usr/bin/php --version
PHP 7.1.7 (cli) (built: Jul 15 2017 18:08:09) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
$ alias | grep php # There are no aliases
$
$ type -a php
php is /usr/local/bin/php
php is /usr/bin/php
我想不出任何可能发生这种情况的原因?
谢谢
NFV
如命令中所述,hash -r
已修复该问题。来自 help hash
:
-r forget all remembered locations
我已经在 OSX high sierra 上安装了 homebrew-php php72。奇怪的是,当我 运行 php 我仍然得到预安装的 php 7.1 - 更奇怪的是,当我 运行 which php
它告诉我它将使用来自 /usr/local/bin
的自制版本不是 /usr/bin
中的预装版本。我没有设置别名。
一些shell输出:
$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/sbin:/sbin:/opt/X11/bin
$ which php
/usr/local/bin/php
$ php --version
PHP 7.1.7 (cli) (built: Jul 15 2017 18:08:09) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
$ /usr/local/bin/php --version
PHP 7.2.3 (cli) (built: Mar 8 2018 10:30:06) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.3, Copyright (c) 1999-2018, by Zend Technologies
$ /usr/bin/php --version
PHP 7.1.7 (cli) (built: Jul 15 2017 18:08:09) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
$ alias | grep php # There are no aliases
$
$ type -a php
php is /usr/local/bin/php
php is /usr/bin/php
我想不出任何可能发生这种情况的原因?
谢谢 NFV
如命令中所述,hash -r
已修复该问题。来自 help hash
:
-r forget all remembered locations