Linux crontab定時器的使用

来源:http://www.cnblogs.com/thfeng/archive/2016/04/22/5420192.html
-Advertisement-
Play Games

crontab參數: -u:幫助其他用戶建立或移除工作排程 -l:查閱crontab的工作內容 -r:移除所有的crontab的工作內容 -e:編輯crontab文件 每項工作有六個欄位: * * * * * * 分鐘 小時 日期 月份 周 指令 0-59 0-23 1-31 1-12 0-7 指令 ...


crontab參數:

  -u:幫助其他用戶建立或移除工作排程

  -l:查閱crontab的工作內容

  -r:移除所有的crontab的工作內容

  -e:編輯crontab文件

每項工作有六個欄位:

  *  *  *  *  *  *

  分鐘  小時  日期  月份  周  指令

  0-59  0-23  1-31  1-12  0-7 指令       #0和7都代表星期日

輔助特殊字元:

  *  代表任何時刻

  ,  代表分割時間。如2點和5點 就是2,5

  -  代表一段時間範圍。 如2點到5點 就是2-5

  /n  n代表數字,即每隔n單位。 如每隔5分鐘,/5

例子:每個星期三下午14:30分發送一個郵件給pc

  30 14 * * 3 mail pc -s "test"</home/text.txt

若要編輯系統例行性任務,可以通過編輯/etc/crontab文件

 

基本格式 :
*  *  *  *  *  command
分  時  日  月  周  命令
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令


crontab文件的一些例子:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重啟apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重啟apache。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重啟apache。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之間每隔30分鐘重啟apache。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重啟apache。
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小時重啟apache
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11點到早上7點之間,每隔一小時重啟apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4號與每周一到周三的11點重啟apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一號的4點重啟apache
名稱 : crontab
使用許可權 : 所有使用者
使用方式 :
crontab file [-u user]-用指定的文件替代目前的crontab。
crontab-[-u user]-用標準輸入替代目前的crontab.
crontab-1[user]-列出用戶目前的crontab.
crontab-e[user]-編輯用戶目前的crontab.
crontab-d[user]-刪除用戶目前的crontab.
crontab-c dir- 指定crontab的目錄。
crontab文件的格式:M H D m d cmd.
M: 分鐘(0-59)。
H:小時(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期內的天(0~6,0為星期天)。
cmd要運行的程式,程式被送入sh執行,這個shell只有USER,HOME,SHELL這三個環境變數
說明 :
crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定
user 的時程表,這個前提是你必須要有其許可權(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設
定自己的時程表。
參數 :
crontab -e : 執行文字編輯器來設定時程表,內定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設定 VISUAL 環境變數
來指定使用那個文字編輯器(比如說 setenv VISUAL joe)
crontab -r : 刪除目前的時程表
crontab -l : 列出目前的時程表
crontab file [-u user]-用指定的文件替代目前的crontab。
時程表的格式如下 :
f1 f2 f3 f4 f5 program
其中 f1 是表示分鐘,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執
行的程式。
當 f1 為 * 時表示每分鐘都要執行 program,f2 為 * 時表示每小時都要執行程式,其餘類推
當 f1 為 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鐘個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鐘要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。
例子 :
#每天早上7點執行一次 /bin/ls :
0 7 * * * /bin/ls
在 12 月內, 每天的早上 6 點到 12 點中,每隔3個小時執行一次 /usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信給 [email protected] :
0 17 * * 1-5 mail -s "hi" [email protected] < /tmp/maildata
每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執行 echo "haha"
20 0-23/2 * * * echo "haha"
註意 :
當程式在你所指定的時間執行後,系統會寄一封信給你,顯示該程式執行的內容,若是你不希望收到這樣的信,請在每一行空一格之
後加上 > /dev/null 2>&1 即可
例子2 :
#每天早上6點10分
10 6 * * * date
#每兩個小時
0 */2 * * * date
#晚上11點到早上8點之間每兩個小時,早上8點
0 23-7/2,8 * * * date
#每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * mon-wed date
#1月份日早上4點
0 4 1 jan * date
範例
$crontab -l 列出用戶目前的crontab.


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 資料庫是表的容器, 表,必須屬於某個資料庫 通過.語句指定所屬資料庫; 進行表操作時,都會指定當前的預設資料庫 Use db_name; 1.創建表 Create table tbl_name {列結構}[表選項] 先分析,需要保存的實體數據,擁有哪些屬性。這些屬性應如何保存。 例如:班級的信息 班 ...
  • 前言 在操作資料庫的時候經常會用到判斷數據表、視圖、函數/方法、存儲過程是否存在,若存在,則需要刪除後再重新創建。以下是MS SQL Server中的示例代碼。 數據表(Table) 創建數據表的時候判斷數據表是否存在,若存在則刪除,會經常使用,特別是初始化的時候。 視圖(View) 創建視圖的時候 ...
  • MongoDB 簡介 MongoDB 是一個強大、靈活、易於擴展的通用型資料庫,二級索引、範圍查詢、排序、聚合、地理空間索引等MongoDB 是一個面向文檔的資料庫,非關係型。基本概念:1. 文檔:資料庫的基本單元,類似於"行"2. 集合(collection):動態模式(可以存儲不同結構的文檔)的 ...
  • 對於排查問題找出性能瓶頸來說,最容易發現並解決的問題就是MYSQL的慢查詢以及沒有得用索引的查詢。 方法一: 這個方法我正在用,呵呵,比較喜歡這種即時性的。 Mysql5.0以上的版本可以支持將執行比較慢的SQL語句記錄下來。mysql> show variables like 'long%'; 註 ...
  • 閱讀目錄 序 時間同步 系列索引 本文版權歸mephisto和博客園共有,歡迎轉載,但須保留此段聲明,並給出原文鏈接,謝謝合作。 文章是哥(mephisto)寫的,SourceLink 本文版權歸mephisto和博客園共有,歡迎轉載,但須保留此段聲明,並給出原文鏈接,謝謝合作。 本文版權歸meph ...
  • SQL Server中,經常會用到Identity標識列,這種自增長的欄位操作起來的確是比較方便。但它有時還會帶來一些麻煩。 示例一 :當表中被刪除了某些數據的時候,自增長列的編號就不再是一個連線的數列。這種時候我們可以用以下方案來解決。 http://www.cnblogs.com/rouchen ...
  • --模擬用戶登錄,該用戶ID為1010 fnd_global.apps_initialize(user_id => 1010, resp_id => 20420, resp_appl_id => 1); end; --獲取當時登錄的用戶的ID DECLARE l_user_id NUMBER :=  ...
  • 估計沒什麼價值,單純地記錄下時間,以便以後查看。 TMS320F28335 STM32f030 i3 4170 i3 4170 主頻 150MHz 48MHz 3.7GHZ 3.7GHZ IDE CCS6.0 Eclipse VS2015社區版 VS2015社區版 加速技術 rts2800_fpu3 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...