crontab中反引号和$()无效的解决

简介: 关于crontabQ1:为何可以手工执行,加入crontab后却不能正确执行A:1.如果crontab执行失败,会发送email给你,请在mail中查找出错原因2.crontab中的PATH变量设置与交互式shell环境中不同,要执行的命令必须有正确路径3.在crontab中%字符被认为是换行,所以你的命令中有%时,在crontab中要加\转义比如30 * * * * date '+%D' >datefile  是错误的正确的应该是30 * * * * date '+\%D' >datefilemark一下。

关于crontab
Q1:为何可以手工执行,加入crontab后却不能正确执行
A:1.如果crontab执行失败,会发送email给你,请在mail中查找出错原因
2.crontab中的PATH变量设置与交互式shell环境中不同,要执行的命令必须有正确路径
3.在crontab中%字符被认为是换行,所以你的命令中有%时,在crontab中要加\转义
比如

30 * * * * date '+%D' >datefile  

是错误的

正确的应该是

30 * * * * date '+\%D' >datefile


mark一下。

从怀疑环境变量到怀疑人生,折腾很久没解决。最终百度到了。。。

        

06 07 * * * sh dutystatics.sh >/log/`/bin/date -d '1 days ago ' +\%Y\%m\%d`

目录
相关文章
|
Linux Perl
解决脚本实现:sed -i 替换变量,变量中含有特殊转义字符的问题
解决脚本实现:sed -i 替换变量,变量中含有特殊转义字符的问题
解决脚本实现:sed -i 替换变量,变量中含有特殊转义字符的问题
|
Shell
Shell 预定义变量 ($0、$$、$?、$#、$* 含义)
Shell 预定义变量 ($0、$$、$?、$#、$* 含义)
645 0
|
Windows
简单理解crontab表达式
简单理解crontab表达式
292 0
|
Linux Perl
LINUX使用sed修改文件,如果包含变量,需要使用双引号
LINUX使用sed修改文件,如果包含变量,需要使用双引号
226 0
|
Shell
用shell把所有文件名修改为小写
用shell把所有文件名修改为小写
131 0
|
Shell
SHELL下去掉变量中的回车换行
SHELL下去掉变量中的回车换行
368 0
Crontab 表达式详解
一个cron表达式有至少6个(也可能7个,6个比7个少元素秒)由空格分隔的时间元素。
135 0
|
存储 缓存 Shell
Bash 的基本功能:别名、快捷键、历史命令、输出重定向、管道符、Shell中特殊符号
一、命令别名 1. 命令生效的顺序 执行使用绝对路径或相对路径执行的命令 执行别名 执行Bash内部命令 执行按照 $PATH 环境变量定义的目录顺序查找到的第一个命令 2. 查看别名 命令格式
|
数据库
Confluence 6 Cron 表达式
一个 cron 表达式是以 6-7 时间字段来定义一个计划任务是如何按照时间被执行的。每一个字段中的数据库而已为数字或者是一些特定的字符串来进行表达。
1124 0