ubuntu下使用crontab定时器
生活随笔
收集整理的這篇文章主要介紹了
ubuntu下使用crontab定时器
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
crontab 定時(shí)工具(周期性執(zhí)行的任務(wù)列表稱為Cron Table),其中每一個(gè)任務(wù),被稱為Cron Job。
可以,每分鐘執(zhí)行,每小時(shí)執(zhí)行,每天執(zhí)行,每周執(zhí)行,每月執(zhí)行。
檢查服務(wù)
1.查看任務(wù)
jiqing@ubuntu:~/桌面$ sudo crontab -l no crontab for root2.查看服務(wù)
jiqing@ubuntu:~/桌面$ sudo service cron status cron start/running, process 1163 jiqing@ubuntu:~/桌面$ sudo service cron restart cron stop/waiting cron start/running, process 20296安裝服務(wù)
jiqing@ubuntu:~/桌面$ sudo apt-get install cron 正在讀取軟件包列表... 完成 正在分析軟件包的依賴關(guān)系樹 正在讀取狀態(tài)信息... 完成 下列軟件包是自動(dòng)安裝的并且現(xiàn)在不需要了:gstreamer0.10-plugins-ugly liba52-0.7.4 libdvdnav4 libdvdread4 libmad0libmp3lame0 libmpeg2-4 libopencore-amrnb0 libopencore-amrwb0 libsidplay1libtwolame0 libx264-142 linux-image-extra-4.4.0-31-generic Use 'apt-get autoremove' to remove them. 建議安裝的軟件包:checksecurity exim4 postfix mail-transport-agent 下列【新】軟件包將被安裝:cron 升級(jí)了 0 個(gè)軟件包,新安裝了 1 個(gè)軟件包,要卸載 0 個(gè)軟件包,有 7 個(gè)軟件包未被升級(jí)。 需要下載 81.0 kB 的軟件包。 解壓縮后會(huì)消耗掉 301 kB 的額外空間。 獲取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main cron i386 3.0pl1-124ubuntu2 [81.0 kB] 下載 81.0 kB,耗時(shí) 1秒 (40.5 kB/s) 正在選中未選擇的軟件包 cron。 (正在讀取數(shù)據(jù)庫(kù) ... 系統(tǒng)當(dāng)前共安裝有 269953 個(gè)文件和目錄。) 正準(zhǔn)備解包 .../cron_3.0pl1-124ubuntu2_i386.deb ... 正在解包 cron (3.0pl1-124ubuntu2) ... 正在處理用于 man-db (2.6.7.1-1ubuntu1) 的觸發(fā)器 ... 正在處理用于 ureadahead (0.100.0-16) 的觸發(fā)器 ... 正在設(shè)置 cron (3.0pl1-124ubuntu2) ... cron start/running, process 22657設(shè)置任務(wù)
> 是定向輸出到文件,如果文件不存在,就創(chuàng)建文件;如果文件存在,就將其清空;一般我們備份清理日志文件的時(shí)候,就是這種方法:先備份日志,再用`>`,將日志文件清空(文件大小變成0字節(jié));>> 這個(gè)是將輸出內(nèi)容追加到目標(biāo)文件中。如果文件不存在,就創(chuàng)建文件;如果文件存在,則將新的內(nèi)容追加到那個(gè)文件的末尾,該文件中的原有內(nèi)容不受影響。 crontab -e # m h dom mon dow command */1 * * * * date >> ~/time.log每分鐘,將執(zhí)行一次。將日期寫入log中。
jiqing@ubuntu:~$ cat time.log 2018年 04月 17日 星期二 17:13:01 CST 2018年 04月 17日 星期二 17:14:01 CST 2018年 04月 17日 星期二 17:15:01 CST 2018年 04月 17日 星期二 17:16:01 CST 2018年 04月 17日 星期二 17:17:01 CST前5個(gè)部分表示何時(shí)執(zhí)行命令,最后一個(gè)部分表示執(zhí)行的命令。每個(gè)部分以空格分隔,除了最后一個(gè)部分(命令)可以在內(nèi)部使用空格之外,其他部分都不能使用空格。前5個(gè)部分分別代表:分鐘,小時(shí),天,月,星期,每個(gè)部分的取值范圍如下:
分鐘 0 - 59 小時(shí) 0 - 23 天 1 - 31 月 1 - 12 星期 0 - 6 0表示星期天 除了這些固定值外,還可以配合星號(hào)(*),逗號(hào)(,),和斜線(/)來表示一些其他的含義: 星號(hào) 表示任意值,比如在小時(shí)部分填寫 * 代表任意小時(shí)(每小時(shí)) 逗號(hào) 可以允許在一個(gè)部分中填寫多個(gè)值,比如在分鐘部分填寫 1,3 表示一分鐘或三分鐘 斜線 一般配合 * 使用,代表每隔多長(zhǎng)時(shí)間,比如在小時(shí)部分填寫 */2 代表每隔兩分鐘。所以 */1 和 * 沒有區(qū)別,*/2 可以看成是能被2整除的任意值。以下是一些例子(省略了命令部分):
* * * * * # 每隔一分鐘執(zhí)行一次任務(wù) 0 * * * * # 每小時(shí)的0點(diǎn)執(zhí)行一次任務(wù),比如6:00,10:00 6,10 * 2 * * # 每個(gè)月2號(hào),每小時(shí)的6分和10分執(zhí)行一次任務(wù) */3,*/5 * * * * # 每隔3分鐘或5分鐘執(zhí)行一次任務(wù),比如10:03,10:05,10:06 jiqing@ubuntu:~$ tail -f time.log 2018年 04月 17日 星期二 17:18:01 CST 2018年 04月 17日 星期二 17:19:01 CST 2018年 04月 17日 星期二 17:20:01 CST 2018年 04月 17日 星期二 17:21:01 CST 2018年 04月 17日 星期二 17:22:01 CST 2018年 04月 17日 星期二 17:23:01 CST 2018年 04月 17日 星期二 17:24:01 CST 2018年 04月 17日 星期二 17:25:01 CST 2018年 04月 17日 星期二 17:26:01 CST 2018年 04月 17日 星期二 17:27:01 CST 2018年 04月 17日 星期二 17:28:01 CST可以通過tail -f實(shí)時(shí)監(jiān)控文本日志。
若在crontab中寫了如下的一個(gè)任務(wù): 0 6 * * * echo “Good morning.“//注意單純echo,從屏幕上看不到任何輸出,因?yàn)閏ron把任何輸出都email到root的信箱了 可以把這個(gè)輸出重定向到另外一個(gè)標(biāo)準(zhǔn)輸出文件中,比如說重定向輸出到一個(gè)txt文件中 0 6 * * * echo “Good morning.” >> /tmp/test.txt新建一個(gè)php任務(wù)。
*/1 * * * * php /home/wwwroot/default/test/test.php >> ~/phptime.logphp中的代碼,
<?php echo date('Y-m-d H:i:s')."\n"; ?> jiqing@ubuntu:/home/wwwroot/default/test$ tail -f ~/phptime.log 2018-04-17 17:39:01 2018-04-17 17:40:01 2018-04-17 17:41:01 2018-04-17 17:42:01有反應(yīng)哦。
總結(jié)
以上是生活随笔為你收集整理的ubuntu下使用crontab定时器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java修行之路
- 下一篇: 区块链面试过程中的40个问题