2016-07-15 88 views
-1

我想通过执行脚本每分钟将文本写入文本文件来测试crontab作业。Bash脚本写入时不覆盖?

所以,我有以下脚本:

#!/bin/bash 
date >> /home/SomeUserName/Desktop/date.txt 

这有点做的伎俩,但我不希望我的脚本来覆盖各个它在文件中写入时文件。所以我用“>>”代替“>”,因为我认为它只会附加到文件,而不是覆盖它。但每次crontab执行脚本时,我只能看到一个日期。为什么 ?

我正在使用linux mint。

+0

你确定你执行正确的文件? –

+0

是的,当我手动执行它时,我会得到所需的效果,但是当我使用crontab时,只保存最新的日期。 – afwef1

+0

你正确地期望你**应该**用'>>'附加,所以请编辑你的Q来显示创建这个问题的crontab项。祝你好运。 – shellter

回答

1

我可以确认它应该按预期工作。

创建一个脚本/home/myuser/xd.sh

#!/bin/bash 
date >> $HOME/date.txt 

和一个crontab(通过crontab -e):

# m h dom mon dow command 
    * * * * *  /home/myuser/xd.sh 

然后我看到预期的结果:

$ cat date.txt 
Sa 16. Jul 02:02:01 CEST 2016 
Sa 16. Jul 02:03:01 CEST 2016 
Sa 16. Jul 02:04:01 CEST 2016 
Sa 16. Jul 02:05:01 CEST 2016 
Sa 16. Jul 02:06:01 CEST 2016 
Sa 16. Jul 02:07:01 CEST 2016