首页 范文大全 经典语录
当前位置: 首页 > 范文大全 >

计划任务中心(什么是计划任务?)

100次浏览     发布时间:2024-10-26 10:19:28    

什么是计划任务?

对于计算机运维人员来说,很多命令都是要重复执行的,这些重复执行的指令流程我们可以编写shell脚本统一执行,然而很多时候脚本要定时执行,比如每天某个时间执行一次数据库备份或者git统一push最新的代码。

运维人员不是机器,每天面临如此多的计划,要预先选择一个记事本或者电子文档记录,还得定一个闹钟提醒,按时执行指令,这样是非常耗时且繁琐的,而且可能面临突发情况比如堵车迟到、身体原因等耽搁计划执行。

因此,我们可以用计算机的计划任务功能,自动定时执行我们的特定需求。

Windows系统计划任务

选择桌面计算机图标,鼠标右键-管理,打开任务计划程序,选择创建任务:

设置任务名称:

新建触发器,设置任务执行周期和时间:

操作-选择程序路径:

在任务计划程序库查看新建的任务:

Linux中计划任务

检测cron服务是否已经启动:

cron 的所有任务计划都记录在 crontab 任务计划文件中,通过 crontab 命令对该任务文件进行管理。

语法格式:

# crontab [选项]

参数说明:
-u user 指定用户
-e 编辑某个用户的计划任务文件,若不指定用户,默认编辑当前用户的计划任务文件
-l 显示某个用户的计划任务文件,若不指定用户,默认显示当前用户的计划任务文件
-r 删除某个用户的计划任务文件,若不指定用户,默认删除当前用户的计划任务文件
-i 在删除之前推送确认提示


任务计划的语法格式如下:

          要执行的命令(要求必须使用命令的完整路径,可以使用which查看)

取值范围:
分:0~59
时:0~23
日:1~31
月:1~12
周:0~7,0  7 表示星期天

四个符号:
*:表示取值范围中的每一个数字
-:做连续区间表达式的,要想表示1~7,则可以写成:1-7
/:表示每多少个,例如:想每 10 分钟一次,则可以在分的位置写:*/10
,:表示多个取值,比如想在 1 点,2  6 点执行,则可以在时的位置写:1,2,6

crontab样例

第一次编写计划任务,提示选择编辑器,之后更改编辑器可以运行select-editor:

然后每隔一分钟向test.txt写入一行字符串:

注意下方的文件名,在tmp临时文件夹,这个并不是实际的文件,因为tmp重启后会消失。

实际的文件夹是:/var/spool/cron/crontabs/,默认只能root编辑,还可以用root账户设置黑名单和白名单,控制其他用户是否可以编辑,白名单优先级高于黑名单优先级。

白名单:/etc/cron.deny

黑名单:/etc/cron.allow