我怎样才能看到正在运行的Cronjobs?

时间:2015-01-27 15:53:10

标签: php linux cron

我有cronjobs在预定时间执行PHP文件。这些文字可能需要一个多小时才能完成。我希望能够物理监视脚本。当然,我有日志和很多处理错误的方法,但有时我只是想看看发生了什么。

之前我在Windows上执行此操作,我将安排一个任务,该任务将在任务运行时保持打开的shell中启动。

我可以在Linux上执行此操作吗?使用SSH?或许像使用cron一样使用screen?我正在使用AWS版本的Linux。

谢谢。

3 个答案:

答案 0 :(得分:1)

最简单(虽然很简陋)的方法是在crontab中设置一个环境变量:

* * * * * THIS_IS_A_CRON=1 /path/to/script

然后,看看它们是否在你的机器上运行:

ps auxe | grep THIS_IS_A_CRON

这将列出使用THIS_IS_A_CRON环境变量

启动的所有进程(如果有)

如果你所追求的只是一个窗口,你可以在它运行的时候看到脚本的输出,那真的没有什么不同了:

* * * * * /path/to/script 2>&1 >> /random/output/file.txt

打开tail文件的终端:

tail -100f /random/output/file.txt

答案 1 :(得分:0)

您可以将cronjob的输出传输到日志文件,并且可以使用unix工具(tail,watch等)来查看所有输出,例如:以下将STDERR和STDOUT重定向到日志文件: -

/usr/bin/really_long_script.sh > /tmp/script.log 2>&1

tail -f /tmp/script.log

答案 2 :(得分:0)

如果脚本正在生成您想要监视的输出,请让它记录下来并在日志中使用tail -f。

使用屏幕是过度的。