openwrt cron添加定时启动任务
2016-06-14 14:06
381 查看
1. 修改启动脚本/etc/init.d/cron
/etc/rc.d/S50cron为/etc/init.d/cron的链接
#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org
START=50
USE_PROCD=1
PROG=/usr/sbin/crond
validate_cron_section() {
uci_validate_section system system "${1}" \
'cronloglevel:uinteger'
}
start_service () {
[ -z "$(ls /etc/crontabs/)" ] && return 1
loglevel=$(uci_get "system.@system[0].cronloglevel")
[ -z "${loglevel}" ] || {
/sbin/validate_data uinteger "${loglevel}"
[ "$?" -eq 0 ] || {
echo "validation failed"
return 1
}
}
mkdir -p /var/spool/cron
ln -s /etc/crontabs /var/spool/cron/ 2>/dev/null
procd_open_instance
procd_set_param command "$PROG" -f -c /etc/crontabs -l ${loglevel:-5}
procd_close_instance
}
service_triggers()
{
procd_add_validation validate_cron_section
}
2. 添加默认启动程序/etc/crontabs/root
0 9 * * * killall zllgateway
简单记录一下crontab的用法。
crontab -l
列出当前的默认计划任务列表
crontab -r
删除当前的默认计划任务列表
crontab -e
启用vi修改当前的默认计划任务列表
crontab后面还可以跟FILE参数,指定计划任务列表
然后是计划任务列表的格式:
[minute] [hour] [day of month] [month] [day of week] [program to be run]
其中各个参数的取值范围是:
minute(0-59)
hour(0-23)
day of month(1-31)
month(1-12)
day of week(0-7,0 or 7 is Sun)
每个参数里的取值可以有4种间隔符:
* 表示任意
- 表示范围
, 表示枚举多个值
/ 表示每隔
例如:
周一到周五每天晚上23:30执行ruijieclient -k
30 23 * * 1-5 /bin/ruijieclient -k
每天每隔10分钟执行date
*/10 * * * * date
另外每次执行完成任务后系统会发送信息给你,如果你不想收,可以在每条执行语句后面加:
>> /dev/null 2>&1
/etc/rc.d/S50cron为/etc/init.d/cron的链接
#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org
START=50
USE_PROCD=1
PROG=/usr/sbin/crond
validate_cron_section() {
uci_validate_section system system "${1}" \
'cronloglevel:uinteger'
}
start_service () {
[ -z "$(ls /etc/crontabs/)" ] && return 1
loglevel=$(uci_get "system.@system[0].cronloglevel")
[ -z "${loglevel}" ] || {
/sbin/validate_data uinteger "${loglevel}"
[ "$?" -eq 0 ] || {
echo "validation failed"
return 1
}
}
mkdir -p /var/spool/cron
ln -s /etc/crontabs /var/spool/cron/ 2>/dev/null
procd_open_instance
procd_set_param command "$PROG" -f -c /etc/crontabs -l ${loglevel:-5}
procd_close_instance
}
service_triggers()
{
procd_add_validation validate_cron_section
}
2. 添加默认启动程序/etc/crontabs/root
0 9 * * * killall zllgateway
简单记录一下crontab的用法。
crontab -l
列出当前的默认计划任务列表
crontab -r
删除当前的默认计划任务列表
crontab -e
启用vi修改当前的默认计划任务列表
crontab后面还可以跟FILE参数,指定计划任务列表
然后是计划任务列表的格式:
[minute] [hour] [day of month] [month] [day of week] [program to be run]
其中各个参数的取值范围是:
minute(0-59)
hour(0-23)
day of month(1-31)
month(1-12)
day of week(0-7,0 or 7 is Sun)
每个参数里的取值可以有4种间隔符:
* 表示任意
- 表示范围
, 表示枚举多个值
/ 表示每隔
例如:
周一到周五每天晚上23:30执行ruijieclient -k
30 23 * * 1-5 /bin/ruijieclient -k
每天每隔10分钟执行date
*/10 * * * * date
另外每次执行完成任务后系统会发送信息给你,如果你不想收,可以在每条执行语句后面加:
>> /dev/null 2>&1
相关文章推荐
- Linux chmod
- Redhat linux 挂载命令mount
- 谷歌游览器模拟手机请求网站测试
- 【linux】bash常用快捷键
- CentOS6 安装Tomcat7
- nginx模块开发之handler函数
- Nginx模块开发之最简单的Hello模块
- 每天一个Linux命令(47)route命令
- Nginx负载均衡配置实例详解
- 关于top之后的那些数据
- casscandra单集群搭建
- linux tr命令详解
- opencv 图片的离散傅里叶变换DFT
- nginx改tengine,gitlab重装操作步骤
- Linux下python升级步骤
- 想建设一个能承受500万PV/每天的网站吗?如果计算呢?
- 转载自马哥视频学习笔记---Linux Web服务器网站故障分析常用的命令之awk用法的简单示例
- Linux 打开/关闭CPU命令
- 2台linux机器免密码互相登陆
- Linux下MySQL安装、卸载