Linux crontab命令的使用方法

  crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取和执行。

  在Linux系统中,Linux任务调度的工作主要分为以下两类:
1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置

一、/etc/crontab、/etc/cron.deny 、 /etc/cron.allow文件介绍

  系统调度的任务一般存放在/etc/crontab这个文件下,里面存放了一些系统运行的调度程序,通过命令我们可以看一下里面的内容:

  

  这些任务都会是系统在运行起来后自动进行调度的。同时在/etc目录下还存放了/etc/cron.deny 和 /etc/cron.allow 文件

  /etc/cron.deny 表示不能使用crontab 命令的用户

  /etc/cron.allow 表示能使用crontab的用户。

  如果两个文件同时存在,那么/etc/cron.allow 优先。如果两个文件都不存在,那么只有root用户可以安排作业。

二、crontab命令语法及其各个参数含义

  crontab命令的语法为:

  

  注意:crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。

  各个参数说明:

  

三、crontab命令的格式

  我们如果要创建自己的一个任务调度,可以使用  crontab -e 这个命令,如:

  

  此时会进入到vi编辑界面,来编写我们要调度的任务,crontab调度命令的格式如下:

  

  

  crontab命令中的一些常用特殊符号

  

  下面给出一些crontab命令的实例:

  

四、创建我们自己的crontab命令

  ①实例一:如果我希望每隔一分钟,就将系统的时间写入到/home目录下的date1.txt文件里面,则输入下面的命令

保存以后如果出现  crontab: installing new crontab 这句话,则表示该调度命令已经成功注意:0 6 * * * echo “Good morning.“//注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了
我们可以到/home目录下看是否已经存在了该文本文件,并查看里面的信息:

此时我们发现,我们刚才编写的那个crontab命令已经正常在运行了,只要没有执行终止命令或者系统关机,这个命令就会一直执行下去

②实例二:如果我们需要同时完成两件命令,即每隔一分钟就将系统时间写入到/home目录下的date1.txt文件里面,同时再每隔一分钟将该date1.txt文件拷贝到/目录下生成一个date2.txt的文件。这时我们通常该怎么做呢?方法有两种:

a) 最简单最直接的方法(不推荐):直接输入crontab -e 命令,在后面再追加一个命令即可,如:

虽然这种方法比较简单,但是并不推荐这种,因为如果命令一多的话,并且如果我需要不同用户执行不同的命令时,这种方法在维护起来不方便,所以这里介绍另外一种方法。

b) 首先编写一个可执行的sh文件,然后将我们要执行的任务写着sh文件里面,最后通过crontab来执行我们的sh文件即可(推荐)

首先我们在/目录下编写一个task.sh的文件,里面的内容就是我们刚要执行的两条命令:

然后我们输入crontab -e 命令,将之前的两条命令删除掉,或者在前面加 # 号注释掉:

五、crontab的其他一些命令

  如果我们需要列出自己创建的任务调度都有哪些命令,可以使用 crontab -l 命令来查看

  

  如果我们需要终止自己刚创建的任务调度,则使用 crontab -r 命令即可

  

六、cron服务的启动

我们可以通过 chkconfig --list | grep cron 命令来查看cron服务的启动情况:

  

				
时间: 2024-10-05 07:53:06

Linux crontab命令的使用方法的相关文章

(转载)Linux man命令的使用方法

Linux man命令的使用方法(整理收集自网络) Linux提供了丰富的帮助手册,使用Linux man命令来查看一些不熟悉的命令的使用方法,还可以用来查询系统库文件中的一些函数定义和使用方法. Linux man中的man就是manual的缩写,用来查看系统中自带的各种参考手册,但是手册页分为好几个部分,如下所示: 1 Executable programs or shell commands 2 System calls (functions provided by the kernel)

linux crontab 命令

Linux 系统提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日

Linux ftp命令的使用方法 -- 转

http://jingyan.baidu.com/article/066074d68b6a7ac3c21cb038.html FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层.FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录. ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程

linux tail命令的使用方法详解

本文介绍Linux下tail命令的使用方法. linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容. 一.tail命令语法 tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ] 参数解释: -f 该参数用于监视File文件增长. -c

Linux crontab 命令详解(含配置文件路径)

编辑/etc/crontab 文件配置cron cron 服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情.用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务.此文件的文件格式是: SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐

linux crontab 命令详解

crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的命令,linux系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.要想了解crontab命令,首先得知道crond服务,所以磨刀不误砍柴工,先学习一下crond服务. 初识Crond crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安

Linux crontab 命令格式与举例

每五分钟执行  */5 * * * * 每小时执行     0 * * * * 每天执行        0 0 * * * 每周执行       0 0 * * 0 每月执行        0 0 1 * * 每年执行       0 0 1 1 * 详细用法可以参考该博文http://yangqijun.iteye.com/blog/1173016 1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户. 2.格式

linux find 命令的使用方法

在linux 系统下如何来使用 linux find 命令,参照下面的一个例子. 一.Linux中find常见用法示例·find    path    -option    [    -print ]    [ -exec    -ok    command ]    {} \;#-print 将查找到的文件输出到标准输出#-exec    command    {} \;       -----将查到的文件执行command操作,{} 和 \;之间有空格#-ok 和-exec相同,只不过在操作

[linux]crontab 命令执行问题

在服务器上设置了一个R脚本的crontab任务,死活不执行.在网上搜了很久,终于解决了. 这里主要说一下crontab异常时,该如何排查. 假设cron命令为:* * * * Rscript /your_path/hello_world.r >> /your_path/hello_world.log 1.首先检查cron命令是否完全正确. 虽然很简单,但是我还是在这吃了不少苦. 具体症状主要表现为cron不执行,并且crontab执行日志下找不到执行记录. contab的执行日志在/var/l