Linux下自动化工具 cron jobs 的使用方法解析
2018-07-13 08:53:59来源:编程学习网 阅读 ()
Cron jobs的简单使用
cron jobs 可以将任何的工作设定为定期自动化执行,如工作日志、备份、密码查核、硬盘空间查核等等, 设定且利用这些自动化的工作可以大幅降低系统管理者的日常工作,这些工作通常可以设定在半夜执行以避免在系统尖峰时刻与正常工作共抢系统资源。
############################
# crontab 使用
############################
$ export EDITOR=vi # 设定 EDITOR 系统参数,在此请输入个人习惯使用的文字编辑器
$ crontab -e # 编写个人 cron jobs table
# 此时 crontab 会利用 $EDITOR 这个系统参数,启动文字编辑器
*/1 * * * * date >> /tmp/date # 此语法表示每一分钟执行 date 一次。
$ crontab -l # 列出当前个人的 crontab 设定档
$ cat /tmp/date
$ cat /tmp/date # 请等待一分钟后执行
$ rm /tmp/date
$ cat /tmp/date
############################
# crontab 格式说明
############################
* * * * * date >> /tmp/date
分 时 日 月 周 执行的命令
# 每个月的 15 号上午 10 点 30 分执行,语法为
30 10 15 * * [执行行的命令]
# 星期日早上 3 点 5 分执行,语法为
5 3 * * 7 [执行的命令]
# 每五分钟执行一次,语法为
*/5 * * * * [执行的命令]
以下摘取于 man 5 crontab 用来说明各档位允许的值
field allowed values
----- --------------
minute 0-59
hour 0-23
day of month 1-31
month 1-12 (or names, see below)
day of week 0-7 (0 or 7 is Sun, or use names)
以下是我的系统自动执行date函数截图:

友情提示:如果执行不成功,可试着将/tmp/date改成当前用户可读写路径。
系統定期的 cron jobs
$ cat /etc/crontab # /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file. # This file also has a username field, that none of the other crontabs do. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # m h dom mon dow user command 25 6 * * * root test -e /usr/sbin/anacron || run-parts --report /etc/cron.daily 47 6 * * 7 root test -e /usr/sbin/anacron || run-parts --report /etc/cron.weekly 52 6 1 * * root test -e /usr/sbin/anacron || run-parts --report /etc/cron.monthly # ############################ # /etc/crontab 说明 ############################ # 25 6 * * * 每天早上六点 25 分,执行存放在 /etc/cron.daily 下安排的所有工作 # 47 6 * * 7 星期天早上六点 47 分,执行存放在 /etc/cron.weekly 下安排的所有工作 # 52 6 1 * * 每个月一号早上六点 52 分,执行存放在 /etc/cron.monthly 下安排的所有工作
您只要将您所编写好的 shell script 存放在 /etc/cron.daily 就可以达到每天定期执行的效果。 在此笔者提供一备份的 shell script 提供给读者参考。 你可以将他放置在 /etc/cron.weekly 这样就可每周定期执行备份工作:
$ edit /etc/cron.weekly/backup-utils
#!/bin/bash
SOURCE_DIR="/etc /var /home" # 填入你想备份的目录
BACKUP_DIR="/backup" # 填入你想备份到那个目录下,此处预设为 /backup
BACKUP_NAM="BACKUP-" # 填入你想备份后的文档名前缀
DATE=$(date +%m%d)
FILE_NAME="${BACKUP_DIR}/${BACKUP_NAM}${DATE}.tgz"
tar cvfz $FILE_NAME $SOURCE_DIR
$ chmod +x /etc/cron.weekly/backup-utils
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 5个相见恨晚的Linux命令,phper必备 2019-02-25
- Linux运用一些常用命令,优秀的PHPer都需掌握 2019-01-21
- 详解Git 操作 2018-07-13
- 为什么高手离不开Linux系统? 2018-07-13
- SSH原理与运用 2018-07-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
