如何编写Linux定时执行shell脚本任务

很多时候一些shell脚本我们都希望服务器可以自己定时的去运行,那么以下作简单讲解:

首先讲解一些关于cron服务的指令:

service crond start //启动服务

service crond stop //关闭服务

service crond restart //重启服务

service crond reload //重新载入配置

service crond status //查看crontab服务状态

service crond start //手动启动crontab服务

设置需要执行的脚本

新增调度任务可用两种方法:

1)、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。

2)、直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。

crontab -l //列出当前的所有调度任务

crontab -l -u jp //列出用户jp的所有调度任务
删除任务调度工作

crontab -r //删除所有任务调度工作

直接编辑 vim /etc/crontab ,默认的文件形式如下:如何编写Linux定时执行shell脚本任务
SHELL变量的值指定系统使用的SHELL环境(该样例为bash shell),

PATH变量定义了执行命令的路径。

Cron的输出以电子邮件的形式发给MAILTO变量定义的用户名。如果MAILTO变量定义为空字符串(MAILTO=""),电子邮件不会被发送。

文件/etc/crontab中每行任务的描述格式如下:

minute hour day month dayofweek command

minute - 从0到59的整数

hour - 从0到23的整数

day - 从1到31的整数 (必须是指定月份的有效日期)

month - 从1到12的整数 (或如Jan或Feb简写的月份)

dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)

command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

下图是实现运行一个shell脚本打印hello到sh1.txt文件中。

如何编写Linux定时执行shell脚本任务
前五个✳表示时间更新频率,可自行设置(最小为一分钟);后面是时间更新后需要执行的操作命令。

就此一个简单的定时任务就完成啦!