バッチ処理とCronとシェルの関係の理解を深めるため、整理してまとめてみました。
環境
Linux
関連用語と意味の整理
バッチ処理
一定期間ごとなど何らかの条件に基づいて自動的に特定のジョブを起動する処理方式
ジョブ
コンピュータに対して与えられる処理の実行単位
実行するプログラム名やその所在、実行時の設定などがジョブ制御言語によって記述され、ジョブスケジューラによって自動制御が行われる
クーロン
ある時点で定義されたジョブの実行をスケジュールするデーモン(ジョブスケジューラの一種)
言い換えれば、バッチ処理(の一種)を行うプログラム
/etc/crontabもしくは/etc/cron.d配下のファイルにジョブのスケジュールを記述する
※記述方式は以下の通り
minute hour day month day of week username command
commandの部分にシェルスクリプトを記述することで、シェルによる処理を行わせることができる
シェル
人間が入力した内容をコンピュータに伝達するプログラム
シェルスクリプト
シェルに対する命令を記述したファイル
図で表してみた
バッチ処理とクーロンの関係
クーロンとシェルの関係
※cronの設定ファイルのコマンドの箇所にシェルスクリプトが記入されている場合
①cronは/etc/crontab or /etc/cron.d配下のファイルでスケジュールされた内容をもとに
②シェルを動作させ
③対象のシェルスクリプトの内容を実行する
まとめ
「クーロン」は指定された日時に「シェル」を動作させて、設定ファイルのコマンド欄に記述されている内容を実行する(「バッチ処理」の一種)
参考
バッチ処理【 batch processing 】| IT用語辞典e-Words
ジョブ【 job 】| IT用語辞典e-Words
デーモン 【 daemon 】| IT用語辞典e-Words
第21章 システムタスクの自動化 | RedHat
ジョブ管理でcronは限界があったので”Rundeck”を使ってハッピーになりました | SlideShare
Linux上でシェルが実行される仕組みを,体系的に理解しよう (bash 中級者への道)| 主に言語とシステム開発に関して