现在从命令行执行 php 脚本不起作用。执行以 开头的脚本时#!/usr/bin/env php
。我收到以下错误消息:
env:php:没有此文件或目录。
因此看来我无法使用 php 作为可执行脚本运行/usr/bin/php
。
我认为导致我出现问题的原因是我遵循了这些说明允许 MAMP 的 PHP 副本从终端运行。
sudo mv /usr/bin/php /usr/bin/php-old
似乎不起作用。php 没有重命名。
如果我应该在路径中添加一些内容。我应该添加什么?运行时echo $PATH
:
/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/git/bin:/usr/X11/bin
顺便说一句(不知道是否相关):MySQL 正在运行,但我无法访问http://本地主机/运行时:
sudo apachectl start
答案1
这就是为什么您永远不应该乱动/usr/bin
,而应该保留二进制文件的本地安装。
如果你做了以下事情
sudo mv /usr/bin/php /usr/bin/php-old
您只需执行以下操作即可恢复
sudo mv /usr/bin/php-old /usr/bin/php
然后/usr/bin/env php
就可以工作了。
如果你决定继续安装 MAMP,你当然可以将默认设置移至php
。php-old
但你还需要执行以下操作后搬到:php
php-old
sudo ln -s /Applications/MAMP/bin/php5/bin/php /usr/bin/php
以便可以再次php
使用 MAMP 附带的功能/usr/bin/php
。
但我不能保证它会按预期发挥作用根本。再说一遍,你不应该搬东西进来/usr/bin
。
答案2
您可以直接在脚本中使用 PHP 安装的路径。
#!/Applications/wherever/it/is/you/installed/php