利用 crontab 來做 Linux 固定排程
crontab 介紹
crontab 是 Linux 內建的機制,可以根據設置的時間參數來執行例行性的工作排程。

上述這張圖可以清楚的顯示出前五項參數應該要帶進去的數字。
依序是分鐘, 小時, 日期, 月份, 星期, command
參數為0-59, 0-23, 1-31, 1-21, 0-6, 需要執行的command
※ 月份參數為0代表星期日
參數特殊字符意義
【*】:星號,代表任何時刻都接受的意思【,】:逗號,代表分隔時段。例如:30 9,17 * * * command,代表早上9點半和下午五點半都執行 command。【-】:減號,代表一段時間範圍。例如:15 9-12 * * * command,代表從9點到12點的每個15分都執行 command。【/n】:斜線,n代表數字,表示每個 n 單位間隔。例如:*/5 * * * * command,代表每隔 5 分鐘執行一次 command。
還有一些人性化的參數,一次取代全部五個數字參數
【@reboot】 :僅在開機的時候執行一次。【@yearly】 :一年執行一次,和0 0 1 1 * command效果一樣。【@annually】:(和@yearly一樣)【@monthly】:一個月執行一次,和0 0 1 * * command效果一樣。【@weekly】:一個星期執行一次,和0 0 * * 0 command效果一樣。【@daily】:每天執行,和0 0 * * * command效果一樣。【@midnight】:(和@daily一樣)【@hourly】 :每小時執行,和0 * * * * command效果一樣。
crontab 操作
crontab 是會根據不同的使用者去判定可以操作的範圍。
$ crontab -l: 列出該使用者擁有的 crontab 指令$ crontab -e: 編輯該使用者的 crontab 指令$ crontab -r: 將使用者的 crontab 全部清除!( 小心使用 )
編輯完後就可以存檔離開,Linux 系統便會依照你設定的排程固定做事,非常方便。
※ 下達指令請用 絕對路徑 避免錯誤
範例參考
$ */5 * * * * /home/ubuntu/test.sh:每五分鐘執行一次測試 shell script$ 0 9 * * 1-6 node /home/ubuntu/workspace/report.js:每天早上九點(除了星期日)執行 report.js 這隻檔案
reference
Schedule Tasks on Linux Using Crontab
鳥哥的 Linux 私房菜 例行性工作排程 (crontab)
利用 crontab 來做 Linux 固定排程的更多相关文章
- Linux Kernel 排程機制介紹
http://loda.hala01.com/2011/12/linux-kernel-%E6%8E%92%E7%A8%8B%E6%A9%9F%E5%88%B6%E4%BB%8B%E7%B4%B9/ ...
- linux备忘录-例行性工作排程 (crontab)
例行性工作排程 例行性工作排程分为两类 at at是只执行一次就结束的指令安排.要想使用at,必须要有atd服务的支持. crontab crontab是每隔一段时间自动执行的指令安排.crontab ...
- 例行性工作排程 (crontab)
1. 什么是例行性工作排程 1.1 Linux 工作排程的种类: at, crontab 1.2 Linux 上常见的例行性工作2. 仅运行一次的工作排程 2.1 atd 的启动与 at 运行的方式: ...
- 第十六章、例行性工作排程 (crontab)
1. 什么是例行性工作排程 1.1 Linux 工作排程的种类: at, crontab 1.2 Linux 上常见的例行性工作 2. 仅运行一次的工作排程 2.1 atd 的启动与 at 运行的方式 ...
- Linux学习-循环执行的例行性工作排程
循环执行的例行性工作排程则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的例行性工作,因此这个系统服务是默认启动的. 另外, 由于使用者自己也可以进行例行性工 ...
- Linux学习-什么是例行性工作排程
那么 Linux 的例行性工作是如何进行排程的呢?所谓的排程就是将这些工作安排执行的流程之意! 咱们的 Linux 排程就是透过 crontab 与 at 这两个东西! Linux 工作排程的种类: ...
- 例行性工作排程 (crontab)
说白了,就是一些例行工作的日常执行的排序程序 Linux 工作排程的种类: at,cron 鸟叔说,atd并不是在所有版本都是开启的,但是centos7默认是开启的 [root@localhost ...
- 【原】无脑操作:HTML5 + CSS + JavaScript实现比赛排程
1.背景:朋友请帮忙做一个比赛排程软件 2.需求: ① 比赛人数未知,可以通过文本文件读取参赛人员名称: ② 对参赛人员随机分组,一组两人,两两PK,如果是奇数人数,某一个参赛人员成为幸运儿自动晋级: ...
- crontab 例行性排程
那么我们就来聊一聊 crontab 的语法吧![root@www ~]# crontab [-u username] [-l|-e|-r]选项不参数:-u :只有 root 才能迚行这个仸务,亦即帮其 ...
随机推荐
- Spring的测试
spring测试要引用junit及spring-test <dependency> <groupId>junit</groupId> <artifactId& ...
- Android Studio增加NDK代码编译支持--Mac环境
Android的APP开发基本都是使用Java或者跨平台框架进行开发的,对于很多APP来说已经足够了,但是,对于提供功能给外部使用或者性能要求很高的需求下,如图像处理等,可能会需要C/C++库的支持, ...
- Java如何保存含有时间的日期到Oracle数据库
原文:http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-faq-090281.html#08_01 从Oracle ...
- Inno Setup 版本 5.5.3+ 简体中文语言包
; *** Inno Setup 版本 + 简体中文消息 *** [LangOptions] LanguageName=<7B80><4F53><> Languag ...
- VNC安装与使用
查看是否安装VNC:rpm -qa | grep vnc 安装VNC:rpm -ivh vnc-4.1.2-14.el5_3.1.i386.rpm ,rpm -ivh vnc-server-4.1.2 ...
- 参数table_open_cache
table_cache 参数设置表高速缓存的数目.每个连接进来,都会至少打开一个表缓存.因此, table_cache 的大小应与 max_connections 的设置有关.例如,对于 200 个并 ...
- Codeforces Round #363 (Div. 2)
A题 http://codeforces.com/problemset/problem/699/A 非常的水,两个相向而行,且间距最小的点,搜一遍就是答案了. #include <cstdio& ...
- InstallShield Limited Edition制作安装文件
由于InstallShield Limited Edition for Visual Studio的教程.资料太少,所以我今天才决定写这个文章,专门针对C#项目打包,包括打包集成Microsoft . ...
- 【Oracle】oracle中rownum的说明及使用技巧
oracle中常用到ROWNUM,所以做一些本人对rownum的一些认识和使用技巧的记录,以便备查. 一.rownum的说明 rownum是oracle特有的一个关键字. (1)对于基表,在inser ...
- [转]webpack进阶构建项目(一)
阅读目录 1.理解webpack加载器 2.html-webpack-plugin学习 3.压缩js与css 4.理解less-loader加载器的使用 5.理解babel-loader加载器 6.理 ...