linux批量任务计划,运维小技巧——linux里的计划任务cronjob

本文介绍了如何在Linux中使用cronjob进行任务调度,包括crontab的基本用法、时间字段解释、脚本执行注意事项,以及批量添加和部署的方法。还提及了如何管理cronjob的输出和避免邮件溢出问题。
摘要由CSDN通过智能技术生成

在windows的时候我们经常会用到计划任务,那么在linux里面我们要用啥呢?答案是cronjob,通过百度我们可以知道cronjob里面crontab的用法。#crontab -e

##进入当前用户cronjob的编辑模式

1 2 3 4 5 /bin/bash /path/script

crontab编辑模式里面,分为两个部分第一部分是执行时间,就是上面例子中 1 2 3 4 5,1代表01分,2代表02时,3代表3日,4代表4月,5代表星期五,每个字段都有独立的取值范围,需要注意的是第五个字段,取值范围是0-7;第二部分是脚本执行命令,需要注意的是cronjob里面执行任务的时候是不会带有环境变量的,某些命令是需要使用绝对路径,例如php、ntp等等。

在编辑模式下操作方法和vi一样,当然编写有误,退出编译的时候还是有提示的。

那么写好的cronjob会保存到哪呢?cronjob里面的任务返回默认会保存到哪呢?

编写好的cronjob保存的时候,会在/var/spool/cron/生成一个与用户一致的文件;而返回的信息这回存到与cronjob任务的用户mail文件里。可以想想,默认之下mail会越滚越大,所以编写cronjob的时候最好带上输出重定向 command > /dev/null 2>&1 , > /dev/null 信息输出到/dev/null,来理解为输出为空,2>&1:错误输出stderr合并到标准输出stdout里。

在cronjob的实际运用中我们还会遇到一个问题,如果要用脚本批量增加计划任务,或者把cronjob自动部署到多台服务器上要怎么办?

在crontab的帮助信息里面可以看到:Usage:

crontab [options] file

crontab [options]

crontab -n [hostname]

Options:

-u   define user

-e         edit user's crontab

-l         list user's crontab

-r         delete user's crontab

-i         prompt before deleting

-n   set host in cluster to run users' crontabs

-c         get host in cluster to run users' crontabs

-s         selinux context

-x   enable debugging

Default operation is replace, per 1003.2

根据uasge的第一个方法,可以把需要的计划任务先编写到一个文件中,再通过下面的格式创建cronjob#crontab [options] file

最后一个问题,如果想弄个进去到秒的任务怎么搞?

可以在任务脚本里面增加个sleep试试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值