PHP 在我的服务器上与 Apache 一起运行良好。我想从命令行使用它,但找不到二进制文件:
root@....:~# whereis php
php:
root@....:~# whereis php5
php5: /etc/php5 /usr/lib/php5 /usr/share/php5
上述文件夹中没有二进制文件。
此外,我做了
cd /usr
find . | grep "bin.*php"
并得到 0 个结果。如何定位 php 二进制文件?!
编辑
我重新安装了 php5-cli(显然一切正常,但仍然无法使用它!)
root@...:/usr# apt-get install --reinstall php5-cli
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0B/2490kB of archives.
After this operation, 0B of additional disk space will be used.
Do you want to continue [Y/n]? Y
(Reading database ... 30026 files and directories currently installed.)
Preparing to replace php5-cli 5.2.6.dfsg.1-3ubuntu4.6 (using .../php5-cli_5.2.6.dfsg.1-3ubuntu4.6_i386.deb) ...
Unpacking replacement php5-cli ...
Processing triggers for man-db ...
Setting up php5-cli (5.2.6.dfsg.1-3ubuntu4.6) ...
root@...:/usr# php5-cli
bash: php5-cli: command not found
root@...:/usr# whereis php5-cli
php5-cli:
答案1
某些发行版将 Apache2、CGI 和 CLI SAPI 放在单独的包中。例如,在 Debian 上,您将拥有php5-cli
、php5-cgi
和libapache2-mod-php5
。
要从命令行运行 PHP 脚本,您需要“CLI”包。
答案2
通常二进制文件位于此处:
/usr/bin/php5
有时也会
/user/sbin/php5
如果该命令仅限于超级用户使用。
您的机器上的二进制文件可能已被删除......
答案3
此命令将搜索php
系统中的任何二进制文件,即使它位于 $PATH 之外:
sudo find -type f -name php -executable -exec file -i '{}' \; | grep 'x-executable; charset=binary'