我有以下的Shellscript,我从我的crontab调用,它工作正常,直到它调用涉及wget或find等shell命令的php代码。
#!/bin/sh
PATH=/opt/server/php/bin:/usr/bin/wget:/bin/egrep:/usr/bin/find
cd /opt/server/apache2/htdocs/webapp/
php oil refine job:handler
对于每个命令,我执行哪个命令来查找路径,然后将其添加到Path Variable中。然而,它没有找到命令,我得到这样的消息:
sh: wget: not found
sh: find: not found
我该如何解决这个问题?我知道这是一个常见问题,但我没有在stackoverflow上找到一个很好的解释。另外:我知道从bash和crontab调用脚本可能会导致不同的环境设置,但无论如何我都会遇到这些错误。
答案 0 :(得分:1)
好先生,PATH
是一个字符串,用于描述包含可执行文件的目录,而不是可执行文件本身。
也许使用这样的东西
PATH=/opt/server/php/bin:/usr/bin:/bin