标签: cron

如何在 cron 作业中处理夏令时

我在亚马逊 ec2 机器(Ubuntu 16.04)上有一个 cron 作业,该作业应该在中部时间凌晨 2:00 运行。

cron 作业是使用 UTC 时间安排的。由于中部时间目前是 UTC-5(我们目前处于夏令时),因此它看起来像这样:

0 7 * * * /home/ubuntu/runetl.sh
Run Code Online (Sandbox Code Playgroud)

因此它在 UTC 上午 7:00 运行,这是正确的。

但当我们回到标准时间时,中部时间将更改为 UTC-6,因此作业将在中部时间凌晨 1:00 开始运行。那不是我想要的。我希望它们始终在凌晨 2:00 运行,无论是白天还是标准时间。

我怎样才能做到这一点?

cron time-zone crontab

6
推荐指数
1
解决办法
1万
查看次数

如何在 cron 作业的输出文件名的末尾添加时间戳?

我想将每个 crontab 输出跟踪到单独的文件。通常,我将其用作 crontab 条目:

1  *    * * *   root    php /mix/dostuff.php > /tmp/dostuff.txt
Run Code Online (Sandbox Code Playgroud)

现在,我想让它写而不是/tmp/dostuff.txt,/tmp/dostuff-YYYY-MM-DD-HH-II-SS.txt

我可以得到日期部分,使用这个:

TIMESTAMP=`date +%Y-%m-%H\ %k:%M:%S`
Run Code Online (Sandbox Code Playgroud)

现在,我如何将此 TIMESTAMP 粘贴到输出文件中?

shell cron

5
推荐指数
2
解决办法
2万
查看次数

如何在指定时间自动截取网站截图?

我需要在我指定的时间自动截取网站的屏幕截图。理想情况下它不会使用我的电脑,因为它不能保证在指定的时间打开。

是否有某种网络服务可以做到这一点?或者一些(免费)托管站点,我可以在其中设置脚本来执行此操作(想到 PHP)?我确实有一个可以使用的越狱 iPhone(越狱 = 我有 root 访问权限,也许可以做一些cron魔术)。

screenshot website cron timer php

5
推荐指数
1
解决办法
4万
查看次数

在第一天的时间“n”、第二天的“n+15 分钟”运行 Linux 脚本,依此类推

我正在尝试使用我的网络摄像头拍摄延时摄影图像。我想要做的是在 1 月 1 日午夜运行脚本,然后在 1 月 2 日的 00:15、00:30、1 月 3 日等等。这可以永远运行,我会在完成后将其关闭。

我不能用 Cron 做到这一点,我可以不填充所有可能的组合的 crontab 吗?我不知道还能做什么。

linux webcam script scheduled-tasks cron

5
推荐指数
1
解决办法
2150
查看次数

在 Cron 中使用通知发送或 Zenity

我试图让 cron 在发现特定情况时提供屏幕警报。我知道脚本每分钟执行一次,但它不会显示在屏幕上。

执行的脚本是:

DISPLAY=:0.0 /usr/bin/notify-send -t 1000 Test "This is a test"
Run Code Online (Sandbox Code Playgroud)

从 Mandriva 发行版运行 Gnome。

有任何想法吗?

gnome notifications cron mandriva

5
推荐指数
1
解决办法
4940
查看次数

rm 在 cron 脚本中失败

我有一个 cron 作业调用一个运行良好的 bash 脚本,除了其中的一行假设删除目录中的所有罚款。这一行的结果始终是“没有这样的文件或目录”,即使我已经(多次)验证了该目录中存在文件。有问题的行很简单:

rm /dir1/dir2/dir3/*
Run Code Online (Sandbox Code Playgroud)

该脚本在终端中手动运行时工作正常,因此它必须与 cron 的运行方式有关。我试过给 'dir3' 和它里面的所有文件所有可能的权限,所以它不应该是一个权限问题。(目录和文件也归用户所有)。我试过在“crontab”中指定“SHELL=/bin/bash”。rm 命令没有设置粘滞位,也没有别名。

有趣的是,将 'rm' 命令更改为 'ls' 会产生相同的负面结果(除非您删除尾随的 '*',然后就可以了)。

我在这里缺少什么?

cron

5
推荐指数
1
解决办法
7722
查看次数

使用 shell 脚本,可以判断它何时使用 cron 运行还是手动运行?

使用 shell 脚本,可以判断它何时使用 cron 运行还是手动运行?

更新:

有人问我为什么想知道。我的 cron 作业将被记录,如果有人手动执行它,我希望能够记录它。

cron shell-script

5
推荐指数
2
解决办法
3571
查看次数

cron.weekly 和 cron.monthly 运行时间

cron.weekly 在一周中的哪一天运行

cron.monthly 在每月的哪一天运行?

root script cron

5
推荐指数
1
解决办法
4627
查看次数

删除所有早于 X 天的文件

所以我有一个 cron 设置,每小时将一个文件夹备份到一个 tarball 中。我想在我使用的 shell 脚本中添加大约三天后自动删除文件的功能,这样我就没有大量的文件。

我该怎么办?谢谢。

bash shell cron rm

5
推荐指数
1
解决办法
3042
查看次数

Cron 忽略对 crontab 的更新

我在 debian 服务器上的 crontab 中注释掉了一行,我猜默认情况下它在那里但导致我每小时收到错误电子邮件:

# m h dom mon dow user  command
17 *   * * *   root    cd / && run-parts --report /etc/cron.hourly
Run Code Online (Sandbox Code Playgroud)

但是,错误电子邮件不断出现,就好像它没有被注释掉一样。错误邮件:

Subject: Cron <root@(none)> root    cd / && run-parts --report /etc/cron.hourly (failed)
/bin/sh: root: not found
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

linux debian cron crontab

5
推荐指数
1
解决办法
4988
查看次数