2014-02-24 65 views
0

任何人都可以让我知道为什么这不起作用:的crontab不注日期录入工作

# DO NOT EDIT THIS FILE - edit the master and reinstall. 
# (/tmp/crontab.oYrOhTNQ48 installed on Wed Feb 19 17:10:46 2014) 
# (Cron version -- $FreeBSD: src/usr.sbin/cron/crontab/crontab.c,v 1.22.2.1.6.1 2008/10/02 02:57:24 kensmith Exp $) 
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/usr/home/dennis/bin 
SHELL=/usr/local/bin/tcsh 
TZ=GMT 

## backup 
0 */4 * * * /usr/local/mysql-5.1.50/bin/mysqldump -e -u username -ppassword sm | /usr/bin/gzip > /tmp/database.`date +%m-%d-%Y-%T`.sql.gz 
* * * * * /usr/bin/touch /usr/home/dennis/thisworks 
* * * * * env > ~/env.output 

不幸的是我有日志文件没有访问..所以我看不到任何错误。手动它工作正常。如果我拿出date +%m-%d-%Y-%T它也可以。我甚至尝试过完整的路线,因为没有运气。

有一点帮助吗?

+0

有几个问题:(1)这是你的用户帐户的'crontab'吗? (2)为什么你的文件显示“不要编辑这个文件”行?如果你用'crontab -e'正确编辑它,这不应该发生,(3)通过“不起作用”症状是什么? '/ tmp'中是否没有输出文件? – lurker

回答

0

你有壳牌吗?到刚刚在shell中运行

/usr/local/mysql-5.1.50/bin/mysqldump -e -u username -ppassword sm | /usr/bin/gzip > /tmp/database.`date +%m-%d-%Y-%T`.sql.gz 

的最佳方式。你会看到任何错误。

一旦bash命令正在工作,然后将其移动到cron并应用日期设置。

0

我刚刚遇到了同样的问题,最后通过转义date命令中的%字符来修复它。

在crontab中该行应保持不变,只是改变:

`date +%m-%d-%Y-%T` 

`date +\%m-\%d-\%Y-\%T` 

正如前面提到的,你应该永远编辑系统crontab文件。你应该使用:

crontab -e