科技爱好者博客

linux下使用 crontab 设定定时任务

在linux 下经常会用到定时任务,比如我们要定时备份服务器的数据,备份数据库服务器,可能要定时发送邮件、定时重启服务或者定时更新系统、定时更新软件等等,这些都要使用定时任务来完成,在 linux 下可以使用 crontab 命令来设定定时任务。

语法介绍

crontab命令说明
1、使用权限:
root用户和crontab文件的所有者
2、语法:
crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]
3、说明:
crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。
4、参数:

5、时程表的格式如下:
m h  dom mon dow   command
其中 m 是表示分钟,h 表示小时,dom 表示一个月份中的第几日,mon 表示月份,dow 表示一个星期中的第几天。program 表示要执行的程式。

使用方法

首先使用 crontab -e  命令来新建一条定时任务。

root@lixinxing--Ideapad:~# crontab -e

如果是首次新建定时任务,他会让你选择使用的文本编辑器。

select-editor

我选择的是 nano ,这里可以根据自己的喜好选择自己熟悉的编辑器。

打开后有这样的提示

# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/

我们可以在最后一行加上新建的定时任务,比如“每隔1分钟将当前的时间写入 /home/lixinixng/date.txt”,我们可以这样新建定时任务。

*/1 * * * * date >> /home/lixinxing/date.txt

新建后保存退出。提示有新的定时任务新建:

crontab: installing new crontab

然后我们查看下定时任务是否在运行。使用命令查看 date.txt 文件:

root@lixinxing--Ideapad:~# tail -f /home/lixinxing/date.txt

可以看到每隔 1 分钟会将时间写入到文件中去,并回不断的刷新,看到的是这样:

root@lixinxing--Ideapad:~# tail -f /home/lixinxing/date.txt
 2015年 06月 14日 星期日 12:32:01 CST
 2015年 06月 14日 星期日 12:33:01 CST
 2015年 06月 14日 星期日 12:34:01 CST
 2015年 06月 14日 星期日 12:35:01 CST
 2015年 06月 14日 星期日 12:36:01 CST


这样定时任务就成功新建了,当然你也可以建立其他的定时任务,更多示例请看这儿。

示例

原创文章,转载请注明: 转载自科技爱好者博客

本文链接地址: linux下使用 crontab 设定定时任务 (https://www.tujing.site/668)

如果博客对您有帮助,请给我 赞助


退出移动版