cron 是一個可以用來根據時間、日期、月份、星期的組合來排程對重複任務的執行的守護程序。
名稱 : crontab
使用權限 : 所有使用者
使用方式 :
crontab [ -u user ] file
crontab [ -u user ] { -l | -r | -e }
說明 :
crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定 user 的時程表,這個前提是你必須要有其權限(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設定自己的時程表。
餐數 :
-e : 執行文字編輯器來設定時程表,内定的文字編輯器是 vi,如果你想用别的文字編輯器,則請先設定 visual 環境變數來指定使用那個文字編輯器(比如說 setenv visual joe)
-r : 删除目前的時程表
-l : 列出目前的時程表
基本格式 :
* * * * * command
分 時 日 月 周 指令
第1清單示分鐘1~59 每分鐘用*或者 */1表示
第2清單示小時1~23(0表示0點)
第3清單示日期1~31
第4清單示月份1~12
第5列辨別星期幾0~6(0表示星期天)
第6列要運作的指令
<code>1</code>
<code>#python by kryptosx</code>
<code>2</code>
<code>#按照cron要求格式顯示目前時間</code>
<code>3</code>
<code>#minute hour day month dayofweek</code>
<code>4</code>
<code>import</code> <code>datetime </code>
<code>5</code>
<code>cron_format </code><code>=</code> <code>'%m %h %d %m %w'</code>
<code>6</code>
<code>datetime.datetime.now().strftime(cron_format)</code>
如果執行的指令會在控制台中顯示資訊,那麼它将會使用郵件發送給目前使用者:
<code>heirloom mail version 12.5 7/5/10. type ? for help.</code>
<code>"/var/spool/mail/kryptosx": 8 messages</code>
<code>> 1 (cron daemon) wed jun 11 16:00 28/1069 "cron <kryptosx@localhost>"</code>
<code>#郵件的内容中顯示的就是你執行這個指令時控制台顯示的内容。比如執行失敗。</code>
<code>/bin/sh: /home/kryptosx/a.cpp: 權限不夠</code>