cron - プログラム実行スケジューラ

トップ > チップス > cron - プログラム実行スケジューラ
2012-02-13, cron

/tips/linux/cron 指定した時間にプログラムを実行するスケジュールを定義するための仕組みです。主にcrontabコマンドを利用して、ユーザ単位でスケジュールを定義します。

**書式 crontab定義ファイルは一行が以下のスタイルに従って記述されます。 ,分,時,日,月,曜日(0が日曜),実行コマンド

{strong:時刻指定の書式} ,\\*,全て ,1\,2\,3,リスト(1と2と3) ,4-6,範囲指定(4から6) ,\\*/2,スキップ(2時間単位ごと)

{strong:コマンド指定時に利用可能な環境変数} 普通にログインした場合より遥かに少ない変数しか利用できません。特にPATH変数の値に注意して下さい。 :export HOME="/home/username" :export LOGNAME="username" :export OLDPWD :export PATH="/usr/bin:/bin" :export PWD="/home/username" :export SHELL="/bin/sh" :export SHLVL="1" :export USER="username"

**rsyncでバックアップ : # crontab -e 以下を書き込む。(毎朝4時にファイル転送) : MAILTO=root : 1 4 * * * rsync -a /home/yosei/ : /home/rsync/home/yosei/ リモートサーバにバックアップする場合は、こんな感じ。 :MAILTO=yosei :1 4 * * * rsync -a -e ssh /home/yosei/ \\ : yosei@mars:/home/rsync/home/yosei/

**スクリプトの起動 複雑な処理を自動化する。cronでスクリプトを実行する場合、PATHの設定に注意(デフォルトでは/bin:/usr/binくらいにしかパスが通っていません)。 : MAILTO=root : PATH=/bin:/usr/bin:/home/username/bin : 1 4 * * * hogehoge.sh

この記事は役に立ちましたか?