博客
关于我
linux定时任务
阅读量:447 次
发布时间:2019-03-06

本文共 1274 字,大约阅读时间需要 4 分钟。

crontab 指令

crontab 是一个在 Unix 系统中用于配置自动任务调度的强大工具。它允许用户在特定时间执行脚本或命令。以下是 crontab 的基本用法和常见示例。


1. 启用 crontab

首先,使用 crontab -e 打开或创建 crontab 文件。文件不存在时,crontab 会自动创建一个新的文件。

crontab -e

2. crontab 文件格式

crontab 文件中的每一行表示一个定时任务。每一行的格式如下:

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
  • minute:0 - 59(分钟)
  • hour:0 - 23(小时)
  • day-of-month:0 - 31(月份中的天数)
  • month:1 - 12(月份,1 为1月,12 为12月)
  • day-of-week:0 - 7(星期,0 或 7 为周日)
  • full-path-to-shell-script:脚本的完整路径和文件名

3. 常用 crontab 选项

  • -l:显示当前用户的 crontab 文件。

    crontab -l
  • -r:删除当前用户的 crontab 文件。

    crontab -r
  • -i:提示删除 crontab 文件时,需要确认操作。

    crontab -i
  • -e:编辑当前用户的 crontab 文件(默认选项)。


4. crontab 文件中的示例

文件中的每一行表示一个任务。以下是常见的格式示例:

  • 每隔5分钟运行脚本

    */5 * * * * /root/usercnt.sh
    • */5 表示每5分钟执行一次。
    • * 表示所有值(分钟、小时、天、月、星期)。
  • 在指定文件夹中查找并删除3天前的文件

    0 0 * * * /home/xxx/del-files-3-days-ago.sh
    • 任务在每天的零点零分运行。

    • 脚本内容示例:

    #!/bin/bashfind /home/xxx/files -mtime +3 -name "*" -exec rm -rf {} ;

    - `-mtime +3`:表示3天前的文件。- `;`:用于将 find 指令传递给 shell。

5. 实际应用示例

例子 1:每天凌晨删除三天前的数据

crontab 写法:

0 0 * * * /home/wb.luozixi/del-files-3-days-ago.sh
  • 每天的零点零分执行脚本 del-files-3-days-ago.sh
  • 脚本功能:删除 /home/wb.luozixi/files 目录中三天前的所有文件。

脚本内容:

#!/bin/bashfind /home/xxx/files -mtime +3 -name "*" -exec rm -rf {} \;
  • find 指令用于查找指定目录中3天前的文件。
  • rm -rf 用于递归删除找到的文件。

通过以上方法,您可以轻松配置自动化任务,提升工作效率。

转载地址:http://wulyz.baihongyu.com/

你可能感兴趣的文章
PHP获取curl传输进度
查看>>
PHP获取IP所在地区(转)
查看>>
PHP获取IP的方法对比
查看>>
php获取json里面内容
查看>>
R2的版本由来
查看>>
PHP获取图片宽度高度、大小尺寸、图片类型、用于布局的img属性
查看>>
PHP获取当前时间、时间戳的各种格式写法汇总
查看>>
PHP获取当前页面的完整URL
查看>>
php获取文件夹中文件的两种方法
查看>>
PHP获取日期的一些方法总结
查看>>
R2学习记录
查看>>
php解析ipa包,获取logo
查看>>
php设计模式 萨莱 pdf,PHP设计模式 建造者模式
查看>>
php设计模式之装饰器模式
查看>>
R&Python Data Science系列:数据处理(5)--字符串函数基于R(一)
查看>>
PHP设计模式:观察者模式
查看>>
php详细学习1
查看>>
php语言优劣
查看>>
PHP语言最优雅的支付SDK扩展包
查看>>
PHP请求https域名发生segment fault段错误
查看>>