导言:查看服务是否已经启动并运行
1、ps -ef | grep xxxx (xxxx写你想查看的进程,比如tomcat)
在unix服务器中添加定时任务
主要内容:
简单解释一下
crontab - *
-e 编辑,类似 vim,保存退出时会检查语法
-l 列举所有任务
-r 删除所有任务
如果 crontab 运行出错,可以查看日志文件/var/log/syslog
基本语法
cron 的语法非常简单,一共分六大块,其中前五块用于指定时间周期,最后一块是具体执行的命令,看起来大概是这么个格式
例子:29,59 9,11,14,16 * * 1-5 java -jar /ocrm_app/sms/SmsSendService16.jar >> /ocrm_app/sms/SmsSendService16.log
min hour day month week command
其中
min 表示分钟,范围 0-59
hour 表示小时,范围 0-23
day 表示天,范围 1-31
可以填写 L,表示当月最后一天
可以填写 W,1W 表示离 1 号最近的工作日
month 表示月,范围 1-12
每个月的最后一天 crontab 本身是不支持的,需要通过脚本判断
week 表示周,范围 0-7
这里 0 和 7 都表示周日
周与日月不能并存,可能会冲突
可以填写 #,4#3 表示当月第三个星期四
可以填写 L,5L 表示当月最后一个星期五
command 表示具体要执行的命令(最好是绝对路径)
如果有多条命令,则需要用&连接,或者将多条命令写在shell脚本中,然后crontab定期执行这个shell脚本即可
另外,类似正则表达式,还有一些特殊符号帮助我们实现灵活调度
* 星号,表示每个可能的值都接受
例如 * * * * * command 表示每分钟都执行 command 一次
, 逗号,并列时间
例如 * 6,12,18 * * * command 表示在 6 点、12 点和 18 点执行 command 一次
- 减号,连续区间
例如 * 9-17 * * * command 表示从 9 点到 17 点,每分钟都执行 command 一次
/ 斜线,间隔单位
例如 */5 * * * * command 表示每隔 5 分钟执行 command 一次