如何添加舍邦#!在 Linux 上使用 php 脚本?

2022-08-30 15:09:32

我在添加shebang #时遇到了一点问题!在RedHat Linux上使用我的php脚本。我有一小段添加了shebang的测试代码(我也尝试过不同的变体),但是每次尝试运行脚本时都会收到以下错误消息。

错误消息:

-bash: script.php: command not found

测试脚本:

#!/bin/env php    
<?php echo "test"; ?>

社邦#!变化:

#!/usr/bin/php
#!/usr/bin/env php

答案 1

它应该(对于大多数系统)是 ,但您的错误与此无关。#!/usr/bin/env php

-bash: script.php: command not found

它说找不到脚本.php

如果问题是shebang行,那么错误会说如下:

bash: script.php: /usr/env: bad interpreter: No such file or directory

据推测,您正在键入并且该文件不在您的目录中,或者不可执行。script.php$PATH

  1. 使其可执行:。chmod +x script.php
  2. 键入它的路径而不仅仅是文件名,如果它在当前目录中,则:。./script.php

您可以将文件移动/复制/符号链接到中列出的某个位置,而不是 2,或者修改$PATH以包含包含脚本的目录。$PATH


答案 2

如果您的脚本不位于您的脚本中并且是可执行的,则必须在调用脚本时加上如下前缀:/usr/local/binphp

php myscrip.php

对于shebangs,这是我使用的:

喜欢这个:

#!/usr/bin/php

或者这个:

#!/usr/bin/env php

推荐