cron是一個在類Unix操作系統上的任務計劃程序。它可以讓用戶在指定時間段周期性地運行命令或者shell腳本,通常被用在系統的自動化維護或者管理。
crontab 的基本格式是:
<分鐘> <小時> <日> <月份> <星期> <命令>
- 分鐘 值從 0 到 59.
- 小時 值從 0 到 23.
- 日 值從 1 到 31.
- 月 值從 1 到 12.
- 星期 值從 0 到 6, 0 代表星期日.
多個時間可以用逗號隔開,范圍可以用連字符給出,星號可以作為通配符??崭裼脕矸珠_字段。例如,下面一行:
*0,*5 9-16 * 1-5,9-12 1-5 /home/user/bin/i_love_cron.sh
會在夏天(六、七、八月)之外的每周周一到周五的上午9點到下午4點之間每5分鐘執行一次 i_love_cron.sh。
基本命令
Crontabs 不應該直接編輯;用戶應該使用 crontab 程序來處理他們的 crontabs。為了能夠訪問這個命令,用戶必須添加到 users 用戶組 (見 gpasswd 命令).
要查看 crontabs,用戶應該運行下面的命令:
$ crontab -l
要編輯 crontabs,可以使用:
$ crontab -e
要移除 crontabs, 可以使用:
$ crontab -d
如果用戶有一個保存好的 crontab 想要用它完全覆蓋舊的 crontab,可以使用:
$ crontab saved_crontab_filename
想從命令行覆蓋一個 crontab,使用:
$ crontab -
想編輯別的用戶的 crontab, 使用root運行下面的命令:
# crontab -u username -e
同一個格式 (追加 “-u username” 到命令后) 也可以用來列出或刪除 crontabs。
如果想使用 nano 而不是 vi 作為 crontab 編輯器,添加下面的變量到 /etc/bash.bashrc:
export EDITOR="/usr/bin/nano"
然后重啟終端
范例
下面的條目:
01 * * * * /bin/echo Hello, world!
將會在每個月的每一天的每一個小時的第一分鐘(例如,在12:01,1:01,2:01等)執行命令 /bin/echo Hello, world!
類似地,
*/5 * * jan mon-fri /bin/echo Hello, world!
將會在一月的每個工作日每五分鐘(例如,在12:00,12:05,12:10等)執行一次相同的命令。
As noted in the Crontab Format section, the line:
*0,*5 9-16 * 1-5,9-12 1-5 /home/user/bin/i_love_cron.sh
原創文章,作者:HGG,如若轉載,請注明出處:http://www.www58058.com/79303