linux crontab定时任务命令详解

    何为定时任务,简单的理解就是设置一个程序在某个时刻执行某个我们预先设定好的事情。就好比我们的闹钟一样,设置在某个具体的时间点进行闹铃。我们的windows系统可以实现定时任务(可以使用是视图化,也可以使用我们的dos命令中执行),同样的linux系统也可以实现这样的任务。今天主要给大家分享的便是linux系统利用crontab实现定时任务。

    首先,我们的准备一台操作系统是linux的系统,这里我提前以我安装的centos虚拟机为例,系统版本是7.0的。我们先检测系统是否安装了crontab服务。我们先执行以下 crontab -e ,如果提示crontab不存在,则表示我们现在还未安装该服务。如果直接进入一个编辑界面则代表我们已经安装好了服务。当还未安装是,我们使用 yum install vixie-cronyum install crontab 进行安装即可。vixie-cron是cron的主程序,crontab是用来安装、卸载或者列举用来驱动cron守护进程的表格的程序。安装完成之后,我们就来实现第一个程序吧。

接下来,我们以php为例,写一个每隔一分钟创建一个文件夹,并将这个记录写入我们的日志文件中。

  1. 创建一个php文件,我这里apache服务的根目录是在/home/wwwroot/default。我在这个下面创建一个test.php文件目录,在里面写下如下内容。

    linux crontab定时任务命令详解

  2. 第二步,创建我们的定时任务。我们创建的是php文件,可以直接使用php命令执行该文件便会执行该文件里面的内容。我创建定时任务的目录是在用户目录所以待会PHP创建的目录便在root目录下面,我们在该目录创建一个log文件,便于写入日志。创建定时任务的目录是没有固定的格式,在任何目录都可以创建任务。我们使用crontab -e 命令进入一个编辑界面。写入命令 */1 * * * * php >> log /home/wwwroot/default/test.php。最后保存并退出则我们的定时任务便创建成功来。

    linux crontab定时任务命令详解

    接下来,我们在root目录使用ls命令即可看到我们php创建的文件目录。同时查看log日志文件,也可以看到日志文件中写如了success内容。

    linux crontab定时任务命令详解

    linux crontab定时任务命令详解

    这样我们在linux系统中使用crontab服务创建定时任务便成功了。

  3. 现在我们创建的是一条定时任务命令,当我们想实现多个定时任务,我们直接使用crontab -e会进入我们之前的创建好的定时任务中,我们直接换行添加一条我们需要的定时任务即可。

    linux crontab定时任务命令详解

    是不是创建一个定时任务很简单呢?

这里总结以下自己常用定时任务干什么操作吧!

  1. 数据备份。如数据库备份,日志文件备份等等。

  2. 定时触发一些我们不常执行的操作,如我有个博客网站,想在某个时刻把我网站更新的内容发不到第三方平台上面,此时我们创建一个定时任务就方便多了。linux中利用定时任务来处理的一些程序很多很多,这里就简单列举上面两个小案例。

最后,讲解几个crontab常用的操作。

    * * * * * 命令 前面的*依次代表的意思是 

    第一列是分钟1-59 每分钟用*或者*/1表示

    第二列是小时1-23(0表示0点)

    第三列是天1-31

    第四列是月1-12

    第五列是周0-6

    crontab -e 创建定时任务

    crontab -l 列举处当前的定时任务

    crontab -r 删除定时任务(这里会把全部的定时任务都会删除,如果我们需要删除某个指定的定时任务,直接使用crontab -e打开任务列表,将我们不需要的命令删除即可)

更多crontab的讲解,已经分享在一个word文件中了,这里提供百度云的下载地址。链接:http://pan.baidu.com/s/1kVOfzmR  密码:rj5y