一、背景

1.使用crond的定时任务时,编辑了以下的语句,每天0点执行定时任

crontab -e
service crond restart
0 0 * * * sh /root/backup/compress_backup.sh 2>&1 > /root/backup/log_`echo $(date  +%Y-%m-%d)`

2.查看定时任务的执行,语句没有顺利执行,出现问题

tail -5 /var/log/cron

3.本地执行命令是正常的

sh compress_backup.sh  > /root/backup/log_`echo $(date  +%Y-%m-%d)`

 二、问题原因

在crontab中%字符被认为是换行,所以你的命令中有%时,需要在crontab中要加\转义

另外注意sh执行的脚本需要写绝对路径,否则也无法正确的执行

三、解决方案

 在crontab中要加\转义

crontab -e
service crond restart
0 0 * * * sh /root/backup/compress_backup.sh 2>&1 > /root/backup/log_$(date +\%Y-\%m-\%d)

重启查看定时任务的执行,语句正常

tail -5 /var/log/cron

查看文件备份成功且日志正确生成

最新文章

  1. .NET Core HtmlAgilityPack HTML解析利器
  2. No.018:4Sum
  3. C#代码实现对HTTP POST参数进行排序
  4. Webwork 学习之路【04】Configuration 详解
  5. August 17th 2016 Week 34th Wednesday
  6. LeetCode 笔记21 生成第k个排列
  7. HDU 4386
  8. java_jdbc_可滚动结果集与分页
  9. HW4.1
  10. c++primer复习(六)—面向对象编程
  11. PHP第二课笔记
  12. 脑波设备mindwaveTGC接口示例
  13. Java面向对象 集合(上)
  14. git -分支管理(创建、推送、删除)
  15. CAN总线学习总结——错误帧和错误状态
  16. 大数据入门第十九天——推荐系统与mahout(一)入门与概述
  17. javaWeb知识点学习(一)
  18. pycharm的python console报错CE.app/Contents/helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 87, in init self.matchers.remove(self.python_matches) ValueError: list.remove(x): x not in list
  19. 数据挖掘比赛优秀经验贴-收集ing
  20. 新建springboot项目启动出错 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

热门文章

  1. javascript原生style属性分析
  2. Nginx 认证模块
  3. Ubuntu14.04或16.04下普通用户的root权限获得
  4. Linxu用户名验证登录MySQL管理数据库
  5. 解析MySQL存储过程的游标执行过程
  6. 在Linux下源码编译安装GreatSQL/MySQL
  7. Apache DolphinScheduler 需要的sudo,还可以这么玩,长见识了!
  8. Spring源码-Bean生命周期总览
  9. 【MySQL】从入门到精通7-设计多对多数据库
  10. CF-1623C