使用crontab定时执行shell脚本

时间:2024-03-23 21:33:06

很多时候我们有希望服务器定时去运行一个脚本来触发一个操作,比如说定时去备份服务器数据、数据库数据等不适合人工经常做的一些操作。


那么今天就来简单说下如何使用crontab定时执行shell脚本。


步骤一    首先我们先看一下是否安装了crontab。一般情况下linux系统会自带crontab及crond。如果没有安装,请使用以下指令安装:yum install vixie-cron           yum install crontabs (PS:Ubuntu操作系统下请使用apt-get)


使用crontab定时执行shell脚本


步骤二    然后我们写一个名字叫做liao.sh的shell脚本。很简单,就是输出一段字符。


使用crontab定时执行shell脚本


步骤三    我们的目的是每分钟执行一次这个shell脚本,所以要再建立一个存放日志的log文件,然后给予liao.sh权限。


使用crontab定时执行shell脚本


步骤四   然后我们就要使用crontab了,首先进入它的配置文件,在/etc/crontab  中添加我们的调度命令。注意,该配置文件是一个只读文件需要使用sudo vi  /etc/crontab 指令打开文件,不然有可能没有修改权限。


使用crontab定时执行shell脚本


文件/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或 执行自定义脚本的命令) 

 
comp表示以comp用户身份来运行


>>表示运行脚本后重定向到log文件中


对于以上各语句,星号(*)表示所有可用的值。例如*在指代month时表示每月执行(需要符合其他限制条件)该命令。


步骤五    开启crontab服务


使用crontab定时执行shell脚本


步骤六    查看运行结果


使用crontab定时执行shell脚本