Linux 计划任务 Crontab 笔记与总结(5)crontab 常见错误与案例
① 环境变量
cd ~
pwd
就会到你登陆的那个用户的根目录下
ls -a
能够查看到 .bash_profile 这个文件
vim .bash_profile
这里面设置了一些环境变量。
可以设置一个新的环境变量,在文件末尾加上:
APPDIR=/etc
export APPDIR
:wq! 保存退出
source .bash_profile
echo $APPDIR
如果在计划任务中使用到了全局变量,例如
crontab -e
写入
*/ * * * * echo $APPDIR >> /tmp/appdir.log
但是此时使用
tail -f /tmp/appdir.log
查看日志时,去发现显示的是空行,正常情况下应该输出 /etc
$APPDIR 根本没有被识别。
原因是在 .bash_profile 设置的环境变量没有被 crontab 识别,因此要注意。
② 命令行双引号中使用 % 时,未加反斜线 \
③ 第三和第五个域之间执行的是 "或" 操作
第三个域是某个月中的天,第五个域是某个月中的星期几,例如:四月的第一个星期日早晨 1 时 59 分运行 a.sh
- * test `date +\%w` -eq 0 && /root/a.sh
%w eq 0 表示当前日所在的星期的某一天如果等于 0 就执行
test 表示判断是否成功
&& 表示当 前面的 test 成功时执行
【补充】
echo $?
表示判断上一个命令执行成功与否,0 表示成功,1 表示失败
④ 分钟设置误用
【两小时运行一次】
正确的写法
0 */2 * * * date
【再例】
-/ * * * * COMMAND
表示 第1、3、5、7、9.....19 分钟运行命令
============
【综合案例】
【例1】Crontab 中最小只能设置到每分钟执行一个命令,如果想每半分钟执行某个命令怎么做到?
——通过 shell 脚本的 sleep 命令配合 Crontab 即可完成这一功能
date && sleep .5s && date
例如:
该例表示先执行 date,过了0.5s 之后再执行 date
【例2】
crontab -e */ * * * * date >> /tmp/date.log
*/ * * * * seep 30s;date >> /tmp/date.log
第一个命令保证每分钟执行一遍命令
第二个命令,执行的时候,先等妨碍 30s ,再去执行
使用下面的命令可以查看写入的时间
tail -f /tmp/date.log
Linux 计划任务 Crontab 笔记与总结(5)crontab 常见错误与案例的更多相关文章
- linux计划任务 学习笔记
原文链接: http://www.tsingfeng.com/?tag=cronjob 本文说的计划任务是指linux的Cronjob.语法 下面是个简单的计划任务: 10 * * * * /usr/ ...
- linux免密登录ssh验证配置方法及常见错误解决
目标:从服务器A免密登录服务器B [配置方法] 1.在服务器A生成密钥文件,直接使用以下命令: ssh-keygen 中间遇到输入内容一路回车即可,完成后会在 ~/.ssh 目录下生成两个文件:id_ ...
- Linux 计划任务 Crontab 笔记与总结(3)Crontab 配置文件
[全局(系统)配置文件] /etc/crontab Linux 主要的配置文件都在 etc 目录下. cd /etc ls cron* vim crontab 进入 cron.d(服务) cd cro ...
- Linux 计划任务 Crontab 笔记与总结(1)
Linux 版本:CentOS 6.6 应用场景,例如: ① 每分钟执行一个程序检查系统运行状态 ② 每天凌晨需要对过去一天的业务数据进行统计 ③ 每个星期需要把日志文件备份 ④ 每个月把数据库进行备 ...
- Linux学习笔记之Linux计划任务Crontab
0x00 cron 简介 cron 是 UNIX, SOLARIS,LINUX 下的一个十分有用的工具.通过 cron 脚本能使计划任务定期地在系统后台自动运行. 0x01 cron 命令 cront ...
- Linux 计划任务 Crontab 笔记与总结(2)Crontab 的基本组成与配置
[Crontab 的基本组成] ① 系统服务 CROND:每分钟都会从配置文件刷新定时任务 ② 配置文件 :文件方式设置定时任务 ③ 配置工具 crontab:用途调整定时任务 [配置文件的配置文件格 ...
- 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理
目录 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理 17.1 计划任务-at-cron-计划任务使用方法 17.1.1 at计划任务的使用 17.1.2 查看和删除at将要执行 ...
- Linux计划任务Crontab实例详解教程
说明:Crontab是Linux系统中在固定时间执行某一个程序的工具,类似于Windows系统中的任务计划程序 下面通过详细实例来说明在Linux系统中如何使用Crontab 操作系统:CentOS ...
- Linux计划任务crontab
Linux系统中存在两种工作调度的方式 周期性的(at),每隔一个固定的周期要来办的事项: 一次性的(crontab),做完一次以后就不会再执行: at at是个可以处理仅执行一次就结束调度的指令,不 ...
随机推荐
- decltype
在C++中,decltype作为操作符,用于查询表达式的数据类型.decltype在C++11标准制定时引入,主要是为泛型编程而设计,以解决泛型编程中,由于有些类型由模板参数决定,而难以(甚至不可能) ...
- javac编译提示编码GBK的不可映射字符
使用命令行javac命令编译java文件, 提示错误:编码GBK的不可映射字符. 在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe会获得我们操 ...
- Web服务器原理及简单实现
Web系统由客户端(浏览器)和服务器端两部分组成.Web系统架构也被称为B/S架构.最常见的Web服务器有Apache.IIS等,常用的浏览器有IE.Firefox.chrome等.当你想访问一个网页 ...
- hdu 1010:Tempter of the Bone(DFS + 奇偶剪枝)
Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...
- [转]ASP.NET Web.Config 读写辅助类
using System; using System.Configuration; using System.Web; using System.Web.Configuration; namespac ...
- poj 2923 状压dp+01背包
好牛b的思路 题意:一系列物品,用二辆车运送,求运送完所需的最小次数,两辆车必须一起走 解法为状态压缩DP+背包,本题的解题思路是先枚举选择若干个时的状态,总状态量为1<<n,判断这些状态 ...
- VMWare Workstation的命令
1 Ctrl + Alt + <-/-> 多个操作系统的切换
- Android快捷键
Android快捷键ALT+/ :在布局文件中,提示输入的内容Shift + Ctrl + / :注释Shift + Ctrl + \ :解除注释
- 小甲鱼PE详解之区块描述、对齐值以及RVA详解(PE详解06)
各种区块的描述: 很多朋友喜欢听小甲鱼的PE详解,因为他们觉得课堂上老师讲解的都是略略带过,绕得大家云里雾里~刚好小甲鱼文采也没课堂上的教授讲的那么好,只能以比较通俗的话语来给大家描述~ 通常,区块中 ...
- GSON解析
1.把GSON.jar包放到工程lib目录下并依赖 2.使用HiJSON工具格式化json字符串 2.创建对象类 public class MyNews { public News_Paramz pa ...