转载 ::!(博客园大咖)[http://www.cnblogs.com/kaituorensheng/p/4494321.html]

阅读目录

  1. cron服务【Ubuntu环境】
  2. crontab用法
  3. 编辑crontab文件
  4. 流程举例
  5. 几个例子

    Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。

回到顶部

  1. cron服务【Ubuntu环境】

查看cron状态

1

sudo service cron status 

开启cron

1

sudo /etc/init.d/cron start

关闭cron

1

sudo /etc/init.d/cron stop

重启cron

1

sudo /etc/init.d/cron restart

  

回到顶部

2. crontab用法

crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。

crontab –l : 显示 crontab 文件。

crontab -r : 删除 crontab 文件。

crontab -ir : 删除 crontab 文件前提醒用户。

在crontab文件中写入需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:

minute hour day-of-month month-of-year day-of-week commands

合法值为:00-59 00-23 01-31 01-12 0-6 (0 is sunday)

除了数字还有几个特殊的符号:"*"、"/"和"-"、","

*代表所有的取值范围内的数字

"/"代表每的意思,"/5"表示每5个单位

"-"代表从某个数字到某个数字

","分开几个离散的数字

注:commands 注意以下几点

要是存在文件,要写绝对路径

即使是打印也不会显示在显示屏,在后台运行,最好重定向日志

回到顶部

3. 编辑crontab文件

1

2

3

EDITOR=vi

export EDITOR

crontab -e

回到顶部

4. 流程举例

step1:写cron脚本文件,命名为crontest.cron。

15,30,45,59 * * * * echo "xgmtest....." 表示,每隔15分钟,执行一次打印命令

step2:添加定时任务。执行命令

1

crontab /home/del/crontest.cron >~/log

step3:"crontab -l" 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本

1

crontab -l

结果程序会每个15分钟往脚本里写一次“xgmtest.....”

回到顶部

5. 几个例子

每天早上6点

0 6 * * * echo "Good morning." >> /tmp/test.txt //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。

每两个小时(第一个为15,指明没两个小时的第15min中执行一次)

15 */2 * * * echo "Have a break now." >> /tmp/test.txt

晚上11点到早上8点之间每两个小时和早上八点

0 23-7/2,8 * * * echo "Have a good dream" >> /tmp/test.txt

每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点

0 11 4 * 1-3 command line

1月1日早上4点

0 4 1 1 * command line

每小时(第一分钟)执行/etc/cron.hourly内的脚本

01 * * * * root run-parts /etc/cron.hourly

每天(凌晨4:02)执行/etc/cron.daily内的脚本

02 4 * * * root run-parts /etc/cron.daily

每星期(周日凌晨4:22)执行/etc/cron.weekly内的脚本

22 4 * * 0 root run-parts /etc/cron.weekly

每月(1号凌晨4:42)去执行/etc/cron.monthly内的脚本

42 4 1 * * root run-parts /etc/cron.monthly

注意: "run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名。  

每天的下午4点、5点、6点的5 min、15 min、25 min、35 min、45 min、55 min时执行命令。

5,15,25,35,45,55 16,17,18 * * * command

每周一,三,五的下午3:00系统进入维护状态,重新启动系统。

00 15 * *1,3,5 shutdown -r +5

每小时的10分,40分执行用户目录下的innd/bbslin这个指令:

10,40 * * * * innd/bbslink

每小时的1分执行用户目录下的bin/account这个指令:

1 * * * * bin/account

每天早晨三点二十分执行用户目录下如下所示的两个指令(每个指令以;分隔):

203 * * * (/bin/rm -f expire.ls logins.bad;bin/expire$#@62;expire.1st)  

每年的一月和四月,4号到9号的3点12分和3点55分执行/bin/rm -f expire.1st这个指令,并把结果添加在mm.txt这个文件之后(mm.txt文件位于用户自己的目录位置)。

12,553 4-91,4 * /bin/rm -f expire.1st\(#@62;\)#@62;mm.txt

定时执行shell 程序的更多相关文章

  1. Shell脚本实现每个工作日定时执行指定程序

    我们可能会遇到这样的情景:必须在每个工作日定时执行Linux服务器上的某个程序.那么有没有办法实现这一功能呢?答案是肯定的.我们可以运用Shell脚本简单实现这一功能. 原理很简单,Shell脚本内部 ...

  2. 学习Shell脚本编程(第2期)_编写修改权限及执行Shell程序的步骤

    编写Shell程序 执行Shell程序 Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂.Shell程序是指放在一个文件中的一系列Linux命令和实用程序.在执行的时 ...

  3. VBA定时执行某程序

    OnTime 方法参阅应用于示例特性安排一个过程在将来的特定时间运行(既可以是具体指定的某个时间,也可以是指定的一段时间之后). expression.OnTime(EarliestTime, Pro ...

  4. Linux 下用 crontab 设置定时执行python 程序

    Linux 下用 crontab 设置定时执行python 程序 方法/步骤   1,先大概了解crontab,/etc/crontab 就是crontab 的配置文件. crontab命令详解可以查 ...

  5. 2、编写/修改权限及执行Shell程序的步骤

    学习目标编写Shell程序执行Shell程序 正文Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂.Shell程序是指放在一个文件中的一系列Linux命令和实用程序. ...

  6. 【转】linux 定时执行shell脚本

    在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成 本文讲述crontab具体用法,以供备忘. 在oracle ...

  7. linux 定时执行shell脚本

    转自:http://blog.csdn.net/jingxiangren/article/details/4745631 在oracle 中可以利用dbms_job包定时执行pl/sql.sql过程, ...

  8. linux crontab定时执行shell脚本

    linux下使用crontab命令被用来提交和管理用户的需要周期性执行的任务,示例如下:crontab -e 编辑周期任务30 21 * * * /etc/init.d/smb restart 每晚的 ...

  9. linux定时执行shell脚本

    写一个shell脚本,定时执行简单示例 很多时候我们有希望服务器定时去运行一个脚本来触发一个操作,比如说定时去备份服务器数据.数据库数据等 不适合人工经常做的一些操作这里简单说下 Shell俗称壳,类 ...

  10. linux 定时执行shell

    第一步:安装 crontab ,命令 yum -y install vixie-cron                扩展:service crond start //启动服务            ...

随机推荐

  1. Launchpool名词解释

    # 一.什么是Launchpool Launchpool是一种加密货币领域的创新机制,通常由交易所或DeFi平台提供,允许用户通过质押(staking)或锁定特定代币来获得新项目的代币奖励. ## L ...

  2. Linux之用户和用户组管理

    概念 Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须要拥有一个账号进入系统,账号实质上就是一个用户在系统上的标识.系统根据标识分配不同的权限和资源.一个账号包含用 ...

  3. DPDI(Dispatch PDI)kettle调度管理平台环境部署升级

    1.DPDI演示环境 DPDI online登录域名:http://dpdi.pizzalord.site 用户名:dpdi 密 码:dpdi 2.DPDI下载 DPDI online部署包下载地址: ...

  4. 探秘Transformer系列之(29)--- DeepSeek MoE

    探秘Transformer系列之(29)--- DeepSeek MoE 目录 探秘Transformer系列之(29)--- DeepSeek MoE 0x00 概述 0x01 难点 1.1 负载均 ...

  5. 69.9K star!这个API调试神器让你告别Postman,开源免费真香!

    嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 Hoppscotch 是一款专为开发者打造的轻量级API调试工具,凭借其极简的界面设计和强大 ...

  6. rider的xamarin环境安装

    自从用上rider后,vs就再也没有安装过了.最近要做apk开发,就安装xamarin环境,但是总是报错: Show Log->idea.log 发现下面错误: ERROR | Environm ...

  7. Axure RP大数据可视化大屏原型组件源文件

    Axure RP大数据可视化大屏原型模板 大数据BI分析上大屏,在很多大企业和政府单位客户都需要,高新区市场监控等,那使用Axure RP做交互原型是必不可少的,有了大屏原型模板可做出不同风格和行业的 ...

  8. Vite 3 来了!新增功能 + 如何迁移

    @charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 15px; o ...

  9. 21C++数组(2)

    一.字符数组的输入与输出   (第65课 采访报道) 教学视频   大惊小怪报和小惊大怪报是两家全球性的报社,发表的文章全用英文.因风之巅小学的信息学社团开展得很出色,于是两家报社都派记者前来采访,大 ...

  10. RPC实战与核心原理之业务分组

    业务分组:如何隔离流量 回顾 RPC 中常用的保护手段"熔断限流" 熔断是调用方为了避免在调用过程中,服务提供方出现问题的时候,自身资源被耗尽的一种保护行为: 而限流则是服务提供方 ...