3.2.2 実行環境からコマンドでバッチジョブを起動する
(1) adshexecコマンドの引数にジョブ定義スクリプトを指定する方法
実行環境からコマンドを使用してバッチジョブを起動するためには,次のようにadshexecコマンドを使用します。Windowsではコマンドプロンプトからコマンドを入力し,UNIXではシェルからコマンドを入力します。
adshexec batchjob1.ash
また,-rオプションを使用してジョブ定義スクリプトの内容をadshexecコマンドに直接指定できます。複数のコマンドを指定するには,次のようにadshexecコマンドを使用します。
adshexec -r "export DATA=file01 ; pgm001"
UNIXでは,adshexecコマンドに-dオプションを指定すれば,バッチジョブをデバッグすることもできます。adshexecコマンドの詳細については,「8.3 シェル運用コマンド」の「adshexecコマンド(バッチジョブを実行する)」を参照してください。
(2) ジョブ定義スクリプトをコマンドとして指定する方法
UNIXでは,1行目に#!で始まるadshexecコマンドのパス(例:#! /opt/jp1as/bin/adshexec)を記述し,実行権限を付与したジョブ定義スクリプトファイルであれば,ジョブ定義スクリプトのファイル名だけを入力してバッチジョブを起動できます。
- ジョブ定義スクリプトファイル(ファイル名:/home/user1/scripts/batchjob2.ash)
#! /opt/jp1as/bin/adshexec #-adsh_job SAMPLE (以降,ジョブ定義スクリプトの本文)
- バッチジョブ起動の実行例
/home/user1/scripts/batchjob2.ash
- 注意事項
-
Windowsでは,1行目に#!で始まるadshexecコマンドのパスを記述してコマンドプロンプトなどからジョブ定義スクリプトのファイル名だけを入力しても,バッチジョブを起動することはできません。
ただし,1行目に#!に続けて「/opt/jp1as/bin/adshexec」または「/opt/jp1as/bin/adshexec -m MINIMUM」を記述したジョブ定義スクリプトを用意し,別のジョブ定義スクリプトからそのファイル名だけを入力することで,Windows,UNIXどちらでも子孫ジョブを起動できます。そのため,Windowsでも新規に作成するジョブ定義スクリプトでは,1行目に#!に続けて「/opt/jp1as/bin/adshexec」または「/opt/jp1as/bin/adshexec -m MINIMUM」を記述することを推奨します。
ただし,既存のシェルスクリプトを移行した場合など,1行目に「#!/bin/sh」などが記述されているときは,シェルスクリプトを修正しないで子孫ジョブとして実行することもできます。
子孫ジョブについての詳細は「3.2.3 ジョブ定義スクリプトを子孫ジョブとして実行する」を参照してください。