手动或使用 cronjob 运行脚本的区别

Bjö*_*örn 3 linux php bash cron

我有一个 PHP 脚本,我想每 10 分钟运行一次,通过 MEncoder 浏览数据库记录和创建/编辑电影。我已经设置了 cron 作业来完成此任务,但效果不佳。

我有我的 PHP 脚本,称之为 document.php。我还有一个 bash 脚本(document.sh)来调用这个 PHP 脚本;

#!/bin/bash
php document.php
Run Code Online (Sandbox Code Playgroud)

现在出现了奇怪的部分:当我手动运行 bash 脚本时,一切正常——电影是按照我想要的方式创建或编辑的——但是当我让 cron 作业每 10 分钟运行一次 bash 脚本时,电影就会损坏。不过,它们中有一些框架。我不知道这怎么会发生。我检查了权限和文件路径,一切看起来都很好。cron 作业会杀死我的进程吗?它是否有时间限制(通过文件运行 MEncoder 大约需要 1-2 分钟)?

希望有人能提供一个答案 - 这真的让我很烦恼,截止日期快到了。

我正在运行带有最新更新和来自 repo 的最新 MEncoder 的 Ubuntu Server。

最好的问候,比约恩

Chr*_*rel 8

从 cron 运行不会引入你的 shell 配置文件(~/.bashrc 或 ~/.profile 或 /etc/profile) 是否有可能在那里定义了影响你工作的环境变量?尝试在脚本开始时手动获取配置文件。( . /path/to/profile)