- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我只用了一个小时就学会了 cron工作有效,这就是我到目前为止所做的。我正在使用 crontab -e
添加我的 cron 命令,它是:
0/1 * * * */usr/bin/python/home/my_username/hello.py >/home/my_username/log.txt
crontab -l
确认我的命令在那里。
你好.py:
#!/usr/bin/python
# Hello world python program
print "Hello World!"
但我在日志文件中没有看到任何内容。有人可以解释我做错了什么吗?
最佳答案
实验表明 0/1
似乎是问题所在。
0/1
应该等同于*
.如果替换 0/1
与 *
,它应该可以工作。
这是我的实验性 crontab:
0/1 * * * * echo 0/1 >> cron0.log
* * * * * echo star >> cron1.log
这会创建 cron1.log
但不是 cron0.log
.
我会调查并找出原因 0/1
不工作,但现在只需使用 *
它应该有效。
更新:
foo/bar
语法特定于 Vixie cron 实现,它被大多数 Linux 系统和 MacOS X 使用但并不通用。
每分钟运行一个命令的通常方法是只指定 *
在第一个领域。要每 5 分钟运行一次命令, 如果您的 cron 支持它,请指定 */5
.
这是 crontab(5)
的内容手册页说:
Step values can be used in conjunction with ranges. Following a range with
/<number>
specifies skips of the number's value through the range. For example,0-23/2
can be used in the hours field to specify command execution every other hour (the alternative in the V7 standard is0,2,4,6,8,10,12,14,16,18,20,22
). Steps are also permitted after an asterisk, so if you want to say "every two hours", just use*/2
.
我什至不确定是什么0/1
意味着。
更新 2:
好的,这是我找到的。
鉴于字段 2 到 5 都是 *
,将第一个字段(指定分钟)设置为 *
使作业每分钟运行一次。 */2
每 2 分钟运行一次,*/3
每 3 分钟运行一次。这一切都符合预期。
将第一个字段设置为 0/1
中的任何一个, 0/2
, 或 0/3
导致作业仅在整点运行,即,它只相当于 0
.
这不是我从手册页中的描述所期望的。 Wikipedia quote在 jgritty's answer :
Some versions of cron may not accept a value preceding "/" if it is not a range, such as "0". An alternative would be replacing the zero with an asterisk.
似乎不完全正确,至少对于我使用的 Vixie cron 版本而言; 0/1
毫无怨言地接受了,但这并不意味着我所期望的,它似乎也不是特别有用。
关于python - Hello World Cron 作业不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14307518/
我希望使用 API 根据处理 Q 的大小更改运行的 Web 作业实例的数量,我知道我可以在门户中设置规则,但最短聚合时间为 60 分钟,并且我如果我们突然遇到大量工作,不希望系统在扩展之前等待 60
假设我有一个 spark 应用程序并且有两个操作导致两个 spark 作业。 //spark Application //Spark Job1 .... erro
大家好! 作为我对Java的自学的一部分,我正在尝试完成可用的Java初学者分配之一here(非常古老的东西-2001) 问题是我不知道如何应对这个挑战:(我将不胜感激任何建议,因为该解决方案不再可用
我一直在使用 HADOOP 1.2.1 服务器,并在那里执行许多 pig 作业。最近,我考虑将我的 Hadoop 服务器更改为 HADOOP 2.2.0。所以我在 HADOOP 2.2.0 中尝试了一
好的,我修复了静态错误。现在我只是想找出为什么每个对象都得到相同的条目(即相同的名字、年龄、体重等)。这是代码: package classlab3b; import classlab3B.BodyM
我的家庭作业中的一个问题需要一些帮助,我已经尝试了大约一个小时,但无法运行。 列出购买商品数量超过每位顾客平均商品数量的顾客 表格如下: Customer(Cnum, CustomerName, Ad
Kubernetes Jobs重复创建 Pod,直到指定数量的容器成功终止。作业通常与更高级别的CronJob机制一起使用,该机制会按循环计划自动启动新作业。 定期使用 Jobs 和 CronJobs
我有以下工作类(我已经删除了实际的工作代码): @On("0 0 1 * * ?") public class DailyJob extends Job { @Override pub
假设您将 cron 作业配置为每分钟运行一次以做某事。如果实际任务运行时间超过一分钟会发生什么? cron 会创建另一个作业实例/线程吗?还是 cron 会等待并确保上一次运行完成? 谢谢! 最佳答案
我们正在使用 TeamCity 7 并想知道是否可以仅在前一个步骤失败时才运行步骤?我们在构建步骤配置中的选项让您可以选择仅在所有步骤都成功时执行,即使步骤失败,或者始终运行它。 有没有办法仅在前一个
我在 oracle 中编写作业以执行存储过程,但是当时机成熟时,它不会无缘无故地发生任何事情。 是否有某种日志可以让我查看是否发生了错误或其他事情? 我使用 dbms_job 包来创建作业 恩克斯。
我正在用 Java 创建一个用于文件共享的 p2p 应用程序。每个对等节点都将在我的机器上的不同端口上运行并监听请求。但我遇到的问题是,当创建 PeerNode 实例时,我的代码会进入无限循环。以下是
我正在尝试创建一个队列,但当我运行 php artisanqueue:work 时它不起作用,我在终端中得到的只是 [2017-11-30 19:56:27] Processing: App\Jobs
我正在使用PHP库phpseclib0.2.2将SSH自动化到我的一台服务器中。我将其设置为每5分钟运行一次的cron任务。 在设置完它并确保其运行等情况下注销后,我看到了以下内容: $ logout
有没有办法获取多分支管道作业扫描收集到的所有分支的名称? 我想设置一个依赖于现有构建作业的夜间构建,因此需要检查多分支作业是否包含某些特定分支。另一种方法是检查现有作业。 最佳答案 我通过使用 Jen
我在编程方面还很陌生,我不太确定如何完成分配给我的学校作业。 Write a function void print_min(unsigned char a, short b,int c),which
我的作业有问题,需要帮助! 问题 1: 完成下面的 Java 方法,以便 raiseToPower(x,n) 将数字 x 提高到整数 n 次方(即计算值 xn )。请记住 x-n = 1/xn,x0
我正在做一项家庭作业,该作业有四个文本字段和一个文本区域,以及一个将文本字段和文本区域保存到文本文件的按钮,每行一个元素。然后,应出现一个对话框通知用户文件已保存。当对话框关闭时,它应该清空文本字段和
我需要运行一个名为ArrayHolder的java程序,它将运行两个线程。 ArrayHolder 将有一个 Array。 ThreadSeven 会用 7 覆盖该 Array 的每个元素,并用 1
在我的程序中,应该读取学生姓名、ID 号和 GPA,将其分配给指定的学生,然后打印出来。一切都编译正常,但出现错误 Error: Could not find or load main class L
我是一名优秀的程序员,十分优秀!