我有这个奇怪的问题。 php命令没有在一个特定的坐标中find。
我尝试以三种不同的方式调用命令。 其中只有一个失败:

作为用户john我创build了一个简单的脚本调用php --version 。 然后以root用户的身份调用这个脚本: sudo -u john ./script.sh
这样php命令没有find。
作为root我像这样直接调用命令: sudo -u john php --version
这里没问题,命令确实存在。
我直接以用户'john': ./script.sh调用脚本
它也能正常工作。
这是什么原因造成的?
其他用户也会遇到这个问题,不仅仅是john ,它只发生在这个特定的机器上。
操作系统是CentOS 5.9。
编辑:另外,像gcc , perl或python其他命令不会出现这个问题。 php命令是我迄今发现的唯一一个问题。
PATHvariables。 inputecho $PATH来查看当前的pathvariables,并在脚本中设置这个PATHvariables。 至于为什么PATHvariables在两者之间不一致:
bash ,请参阅man bash并在文件顶部附近的“ INVOCATION部分开始阅读。