我有cronjobs在预定时间执行PHP文件。这些文字可能需要一个多小时才能完成。我希望能够物理监视脚本。当然,我有日志和很多处理错误的方法,但有时我只是想看看发生了什么。
之前我在Windows上执行此操作,我将安排一个任务,该任务将在任务运行时保持打开的shell中启动。
我可以在Linux上执行此操作吗?使用SSH?或许像使用cron一样使用screen
?我正在使用AWS版本的Linux。
谢谢。
答案 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。
使用屏幕是过度的。