首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从cron执行sh脚本

从cron执行sh脚本
EN

Server Fault用户
提问于 2011-02-02 15:11:14
回答 2查看 4K关注 0票数 2

我有一个test.sh脚本

代码语言:javascript
复制
#!/bin/sh
php /home/v/file.php
sh /root/x/some.sh

当我从命令行以根用户身份执行文件时,它可以工作。

代码语言:javascript
复制
sh /home/v/test.sh 

当我将它设置为crontab -e (是根cron)时,就不能工作了。

代码语言:javascript
复制
 * * * * * sh /home/v/test.sh

我做错什么了?谢谢

EN

回答 2

Server Fault用户

回答已采纳

发布于 2011-02-02 15:19:28

cron遇到的环境非常有限,请始终使用二进制文件的完整路径。

代码语言:javascript
复制
#!/bin/sh
/usr/bin/php /home/v/file.php
/bin/sh /root/x/some.sh

这考虑到您的php二进制文件在/usr/bin/php中,如果不是这样的话,请更改它。

还尝试在cron邮件行的顶部添加一个带有执行过程中可能发生的任何错误的直接邮件。

代码语言:javascript
复制
MAILTO=youraddress@yourmail.com
* * * * * sh /home/v/test.sh
票数 6
EN

Server Fault用户

发布于 2011-02-02 15:21:40

php二进制文件很可能不在默认的cron路径中。您应该将php二进制文件的完整路径放在脚本中。

/usr/bin/php /home/v/file.php

您还应该为sh提供一个路径。

/bin/sh /root/x/some.sh

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/230195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档