Python Hello world Cron作业不工作

Python Hello world Cron作业不工作,python,unix,cron,crontab,Python,Unix,Cron,Crontab,我只花了一个小时来学习工作是如何工作的,这就是我到目前为止所做的。我正在使用crontab-e添加我的cron命令,它是: 0/1****/usr/bin/python/home/my_username/hello.py>/home/my_username/log.txt crontab-l确认我的命令在那里 Hello.py: #!/usr/bin/python # Hello world python program print "Hello World!" 但是我在日志文件中没有看到任何

我只花了一个小时来学习工作是如何工作的,这就是我到目前为止所做的。我正在使用
crontab-e
添加我的cron命令,它是:

0/1****/usr/bin/python/home/my_username/hello.py>/home/my_username/log.txt

crontab-l
确认我的命令在那里

Hello.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)
手册页上的内容:

阶跃值可与范围一起使用。跟随一系列 with
/
指定通过 范围例如,可以在小时字段中使用
0-23/2
来指定 每隔一小时执行一次命令(V7标准中的替代方案 是
0,2,4,6,8,10,12,14,16,18,20,22
)。之后也允许采取步骤 星号,所以如果你想说“每两个小时”,只需使用
*/2

我甚至不知道
0/1
是什么意思

更新2:

好的,这是我的发现

假设字段2到5都是
*
,将第一个字段(指定分钟数)设置为
*
会导致作业每分钟运行一次<代码>*/2每2分钟运行一次,而
*/3
每3分钟运行一次。这一切都是意料之中的

将第一个字段设置为
0/1
0/2
0/3
中的任何一个都会导致作业仅在一小时的顶端运行,也就是说,它只相当于
0

这不是我从手册页的描述中所期望的。在以下方面:

某些版本的cron可能不接受“/”前面的值(如果是) 不是范围,例如“0”。另一种选择是替换零 带星号的


似乎并不完全正确,至少对于我正在使用的Vixie cron版本来说是如此;
0/1
是可以接受的,没有任何抱怨,但它并不代表我所期望的,而且它似乎也不是特别有用。

0/1
对于您的cron版本,似乎格式错误

我是在以下网站上找到的:

某些版本的cron可能不接受“/”前面的值,如果它不是一个范围, 例如“0”。另一种方法是用星号代替零

因此,基思·汤普森的答案应该是可行的,也应该是:


*/1****

这个条目真的有两行吗,第一行以
结尾?看起来不像,如果你编辑这个问题,你可以看到它不是。这在我的OS X系统上运行良好。你用的是什么操作系统?人们向下投票和投票结束:在我看来,这里有一个真正的问题。请看我的答案。@KeithThompson您的回答证实了这是一个关于ServerFault的问题。我相信m/n语法是Vixie Cron的一个扩展,即基本上仅限Linux。@tripleee:看起来像。看起来是这样。我想真正的问题是定义不清的
0/1
,就像你在回答中提到的那样。@tripleee:我在我的系统上看到了类似的症状(Linux Mint 14,Vixie cron)。