zoukankan
html css js c++ java
Unix/Linux中Cron的用法
cron是unix或者linux下用来定时任务的命令,大致的用法如下:
1、服务的启动和关闭
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
也可以让该服务在开机时自启动:
在/etc/rc.d/rc.local这个脚本的末尾加上如下脚本:
/sbin/service crond start
2、编辑cron服务
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
用crontab -u user -e 进入vi编辑模式,
编辑的内容一定要符合下面的格式:
* * * * * command
这个格式的前一部分是对时间的设定,后面一部分是要执行的命令,当然,这个命令也可以是一个脚本。五个 * 的作用如下:
分钟 (0-59)
小時 (0-23)
日期 (1-31)
月份 (1-12)
星期 (0-6)//0代表星期天
每 次编辑完某个用户的cron设置后,cron自动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记录在这个文件 中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑。cron启动后每过一份钟读一次这个文件,检查是否要执行里面的命令。因此此文件修改后不需要重新启动cron服务。
3、定时方法说明
除了数字之外,还有几个特殊的符号("*"、"/"和"-"、",")可以用来编辑启动时间,*代表所有的取值范围内的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。以下举几个例子说明问题:
每天早上6点:0 6 * * * command
每两个小时:0 */2 * * * command
晚上11点到早上8点之间每两个小时,早上八点:0 23-7/2,8 * * * command
每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点:0 11 4 * 1-3 command
1月1日早上4点:0 4 1 1 * command
4、配置文件/etc/crontab的编辑
cron 服务每分钟不仅读一次/var/spool/cron内的文件,还要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事 情。用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务。此文件的文件格式是:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号
HOME=/ //使用者运行的路径,这里是根目录
# run-parts
01 * * * * root run-parts /etc/cron.hourly //每小时执行/etc/cron.hourly内的脚本
02 4 * * * root run-parts /etc/cron.daily //每天执行/etc/cron.daily内的脚本
22 4 * * 0 root run-parts /etc/cron.weekly //每星期执行/etc/cron.weekly内的脚本
42 4 1 * * root run-parts /etc/cron.monthly //每月去执行/etc/cron.monthly内的脚本
大家注意"run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名了。
5、权限设置
默认情况下,所有用户都能访问cron工具,要对cron进行访问控制,则可以生成/etc/cron.allow与/etc/cron.deny文件。
①、这两个文件都不存在时,每个用户都可以访问cron工具。
②、默认情况下,应该有cron.deny(空文件),cron.allow需要自己创建。
③、存在/etc/cron.allow文件时,则只有cron.allow文件中允许的用户才能访问cron工具,如果也有/etc/cron.deny文件,则忽略cron.deny文件中的内容。
查看全文
相关阅读:
ORM数据库框架 SQLite ORMLite MD
ORM数据库框架 greenDAO SQLite MD
layer-list shape drawable 层叠背景 MD
BAT 批处理 特殊符号 总结 [MD]
集合 enum 枚举 简介 案例 [MD].md
Gradle 翻译 ProGuard Shrink 混淆和压缩 [MD]
构建配置 Enable multidex
构建配置 defaultConfig signingConfigs buildTypes productFlavors dependencies
Android 资源混淆 AndResGuard MD
Android 第三方加固方案 对比 打包 [MD]
原文地址:https://www.cnblogs.com/widget90/p/8743895.html
最新文章
e837. 设置JTabbedPane中卡片的颜色
e829. 获得和设置JTabbedPane 的卡片
e831. 从JTabbedPane中删除一个卡片
e832. 从JTabbedPane中移动卡片
e839. 使JTabbedPane中的卡片可滚动
Tomcat7性能优化
分布式系统互斥性与幂等性问题的分析与解决
枚举类使用
如何将maven项目打包上传到私服
Maven中的库(repository)详解
热门文章
Netty线程模型
StringEscapeUtils.unescapeHtml的使用
ELK kibana查询与过滤
理解HTTP幂等性
如何设计一个小而美的秒杀系统?
MySQL的binlog日志
缓存与数据库一致性保证
缓存与数据库一致性
缓存架构设计细节二三事
缓存更新的套路
Copyright © 2011-2022 走看看