首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单的职位问题(我想!)

简单的职位问题(我想!)
EN

Server Fault用户
提问于 2011-09-05 13:54:37
回答 1查看 198关注 0票数 0

我是一个Unix/Linux n00b。我有一个带有WHM/cPanel的运行CentOS的VPS。我介绍了安装ASSP,这是一个第三方反垃圾邮件解决方案.一切都很好。

ASSP配置的cron作业之一是一个PHP脚本,它查找安装在服务器上的域/子域列表,并自动重新构建带有这些域列表的纯文本文件,每行一个。

有关的cron条目如下:

代码语言:javascript
复制
*/59 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/ex_localdomains.php

我需要做的是手动添加一个固定的额外行到这个文件的末尾和域列表。用文本编辑器手动执行它是可行的,但是由于cron作业每小时运行一次,我的行每小时都会被删除。

简单的方法是在执行的PHP文件的末尾添加一些代码来完成这一任务,但是PHP文件是离子立方体编码的,所以这是不可以的。

相反,我创建了一个PHP脚本,该脚本将一行附加到文件的末尾。以这种方式通过SSH (root登录)执行此命令.

代码语言:javascript
复制
/usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/add_manual_domain.php

...works太棒了!它将我需要的行添加到文件的末尾。因此,我将crontab (crontab -e)中的cronjob修改如下:

代码语言:javascript
复制
*/59 * * * * /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/ex_localdomains.php && /usr/local/cpanel/3rdparty/bin/php-cgi /usr/local/assp/deluxe/add_manual_domain.php

我假设这将执行重建,然后运行我的脚本,在rebuld完成后将该行添加到文件的末尾。

然而,它并不能做到这一点。该文件已成功重建,但未将额外的行添加到我的文件中。但是,从命令行手动运行我的小PHP脚本是可行的。

有人能解释一下这件事吗?

EN

回答 1

Server Fault用户

发布于 2011-09-05 14:10:10

cron处理程序对&&的解释可能与预期不同。(不知道使用的是哪个cron软件,我就无法确切地知道正在发生什么.)

只需编写一个新的2行脚本,其中包含两个PHP命令(每个命令在各自的行上)。实际上,在这个脚本中,您最好将两个文件放在一起,而不是使用PHP添加额外的行。

然后从cron运行这个新脚本,而不是当前cron行。

那样容易多了。

不要忘记将脚本上的权限设置为“执行”。

编辑:刚看到OG的评论。";“可能会工作,但是(比如&)这在一定程度上取决于crontab处理事物的方式。

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

https://serverfault.com/questions/308303

复制
相关文章

相似问题

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