crond是Linux下用来周期性执行某些任务或等待某些事件处理的守护进程。它类似于Windows下的计划任务。操作系统安装完成后,会默认安装该服务工具,并自动启动crond进程。cron进程每分钟会定时检查是否有任务要执行,如果有则自动执行。1、cron服务cron是linux下的一个定时执行工具,可以在不需要人工干预的情况下运行作业。servicecrondstart//启动服务servicecrondstop//关闭服务servicecrondrestart//重启服务servicecrondreload//重新加载配置servicecrondstatus//查看服务状态2.cron配置文件:/var/spool/cron/这个目录存放了包括root在内的各个用户的crontab任务。每个任务都以创建者的名字命名。比如tom创建的crontab任务对应的文件是/var/spool/cron/tom。通常,一个用户最多有一个crontab文件。3./etc/crontab这个文件负责安排维护系统的crontab和系统管理员制定的其他任务SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/#详见man4crontabs#作业定义示例:#.----------------minute(0-59)#|.-------------小时(0-23)#||.------------月中的第几天(1-31)#|||.--------月(1-12)或一月、二月、三月、四月...#||||.----星期几(0-6)(星期日=0或7)或星期日、星期一、星期二、星期三、星期四、星期五、星期六#|||||#*****user-namecommandtobeexecutedMAILTO=root:表示当文件/etc/crontab中的例行命令发生错误时,将错误信息或屏幕显示的信息发送到给谁?由于root在客户端收不到邮件,所以我一般都会把这个邮件换成自己的账号,这样可以随时了解系统的状态!4./etc/cron.d/该目录用于存放任何要执行的crontab文件或脚本。Linux下的定时任务——crontabLinux下的定时任务——crontab01rootrun-parts/etc/cron.hourly:在#run-parts这一行后面的命令中,我们可以发现root后面跟着五个数字,这一行代表“the执行级别是根身份。”当然你也可以把这一行改成其他身份!而run-parts表示后面的/etc/cron.hourly是“一个目录下的所有可执行文件(/etc/cron.hourly)”,也就是说,在每小时的01分,系统会以root身份运行进入/etc/cron.hourly目录执行所有可执行文件!接下来三行意思差不多!你可以在/etc/下看,系统预设了这4个目录!你可以直接把每天需要执行的命令写到/etc/cron.daily中,不需要使用crontab-e程序!5.Permissioncrontab权限问题到/var/adm/cron/查看cron.allow和cron.deny文件是否存在。使用方法如下:1、如果这两个文件不存在,只有root用户才能使用crontab命令。2.如果cron.allow存在但cron.deny不存在,则只有cron.allow文件中列出的用户才能使用crontab命令。如果root用户不在里面,root用户也不能使用crontab。3、如果cron.allow不存在而cron.deny存在,只有cron.deny文件中列出的用户不能使用crontab命令,其他用户可以使用。4.如果这两个文件都存在,cron.allow文件中列出而cron.deny文件中未列出的用户可以使用crontab。如果两个文件中都存在同一个用户,检查cron.allow文件中是否存在。以用户为准。如果cron.allow中有这个用户,可以使用crontab命令。AIX中普通用户默认有crontab权限。如果要限制用户使用crontab,需要编辑/var/adm/cron/cron.deny在HP-UNIX中,普通用户默认没有crontab权限。如果想释放普通用户的crontab权限六、创建cron脚本第一步:编写一个cron脚本文件,命名为crontest.cron。15,30,45,59****echo"xgmtest....">>xgmtest.txt表示每隔15分钟,执行一次打印命令步骤2:添加定时任务。执行命令“crontabcrontest.cron”。获取第三步:“crontab-l”查看定时任务是否成功或者查看/var/spool/cron下是否生成了相应的cron脚本注意:该操作是直接替换用户下的crontab,而不是添加一个新的一个。7.crontab用法crontab命令用于安装、删除或列出用于驱动cron后台进程的表。用户将需要执行的命令序列放入crontab文件中执行。每个用户都可以有自己的crontab文件。/var/spool/cron下的crontab文件不能直接创建或修改。crontab文件由crontab命令创建。如何在crontab文件中输入要执行的命令和时间。文件中的每一行包括六个字段,前五个字段指定命令执行的时间,最后一个字段是要执行的命令。使用空格或制表符分隔每个字段。格式如下:minutehourday-of-monthmonth-of-yearday-of-weekcommands合法值00-5900-2301-3101-120-6(0为星期日)Linux下定时任务——crontabLinux下的定时任务——crontab除了数字之外还有几个特殊符号,分别是“”、“/”和“-”、“,”,代表取值范围内的所有数字,“/”代表各个含义,“/5”表示每5个单位,“-”表示从某数到某数,“,”分隔若干离散数。-l在标准输出上显示当前的crontab。-r删除当前的crontab文件。-e使用VISUAL或EDITOR环境变量指定的编辑器来编辑当前的crontab文件。当您完成编辑离开时,编辑后的文件将自动安装。8.例子:每天早上6:006***echo"Goodmorning.">>/tmp/test.txt//注意简单的回显,从屏幕上看不到任何输出,因为cron会将任何输出通过邮件发送到Root邮箱。每两个小时0*/2***echo“现在休息一下。”>>/tmp/test.txt晚上11点到早上8点之间每两个小时和早上8点023-7/2,8***echo"Haveagooddream">>/tmp/test.txt每个月的第四个和每个星期一到星期三上午11点0114*1-3命令行1月4:00411*命令行SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=root//如果有错误或数据输出,数据将其作为电子邮件发送到此帐户HOME=/每小时执行/etc/cron.hourly中的脚本01****rootrun-parts/etc/cron.hourly,每天执行/etc/cron.daily中的脚本024***rootrun-parts/etc/cron.daily每周执行/etc/cron.weekly中的脚本224**0rootrun-parts/etc/cron.weekly每个月执行/etc/cron.monthly里面的脚本4241**rootrun-parts/etc/cron.monthly注意:“run-parts”是参数,去掉这个参数就可以写入要运行的脚本的名称而不是文件夹名称。每天下午4:00、5:00、6:00分别在5分钟、15分钟、25分钟、35分钟、45分钟、55分钟执行命令。5,15,25,35,45,5516,17,18***命令系统在每周一、三、五下午3:00进入维护状态,并重启系统。0015**1,3,5shutdown-r+5每小时10分钟,40分钟执行用户目录下的innd/bbslin命令:10,40****innd/bbslink每小时1分钟执行user目录下的命令bin/account:1****bin/account每天凌晨3点20分在用户目录下执行如下两条命令(每条命令之间用:隔开):203***(/bin/rm-fexpire.lslogins.bad;bin/expire$#@62;expire.1st)每年一月和四月,4日到9日的3:12和3:55/bin/rm-fexpire。第一条命令,将结果添加到mm.txt文件后(mm.txt文件在用户自己的目录下)。12,5534-91,4*/bin/rm-fexpire.1st$#@62;$#@62;mm.txtx以上是良旭教程网为各位小伙伴分享的Linux下计划任务———定时任务表。以上就是良序教程网为各位小伙伴们分享的Linux相关知识。
