我已经看过如何通过调用composer
来设置运行php脚本的composer,而不是手动发出php
我尝试自己这样做但是它无效。我知道这可能是之前被问过的,但是我无法提出一个问题来找到它。
我有我的档案
#!/usr/bin/php
<?php
echo 'teststring' . PHP_EOL;
当我在文件所在的目录中发出test
时,我什么都没得到,但如果我做php test
那么我就会得到“teststring”。问题是 - 如何设置它以便我可以直接执行文件?
我已对该文件授予x
个权限。
以下是示例输出:
x@y:~/www/html/dev/Project$ ls
...
-rwxrwxr-x 1 www-data www-data 53 сеп 22 12:34 test
...
x@y:~/www/html/dev/Project$ test
x@y:~/www/html/dev/Project$ php test
teststring
x@y:~/www/html/dev/Project$ which php
/usr/bin/php
x@y:~/www/html/dev/Project$
答案 0 :(得分:0)
您应该尝试使用which
代替whereis
来查找php可执行文件
$ which php
...此命令仅搜索可执行文件,而whereis
尝试猜测有用的链接,您可以阅读更多[此处](https://superuser.com/questions/40301/which-whereis-differences)
然后就这样运行
$ ./teststring
您可以在此处阅读有关执行shell脚本的更多信息