5.8.4 正常終了するコマンドを定義する
(1) 終了コードが0以外でも正常終了となるコマンドを定義する
コマンドの終了コードが0以外でも正常終了と認識されるよう,正常終了とする終了コードのしきい値を設定できます。終了コードがこのしきい値を超えなければ,正常終了と処理されます。
終了コードのしきい値は次に示す環境設定パラメーターで設定します。
-
CMDRC_THRESHOLD_USE_PRESETパラメーター
次のすべてのUNIX互換コマンドに対し,終了コードのしきい値を設定します。設定できるしきい値は0または1です。
-
cmpコマンド
-
diffコマンド
-
egrepコマンド
-
exprコマンド
-
grepコマンド
-
sortコマンド
詳細については,「CMDRC_THRESHOLD_USE_PRESETパラメーター(UNIX互換コマンドの終了コードのしきい値を定義する)」を参照してください。
-
-
CMDRC_THRESHOLD_DEFINEパラメーター
対象となるコマンドと,終了コードのしきい値を設定します。指定できるコマンドの種類は次のとおりです。
-
外部コマンド
-
UNIX互換コマンド
-
シェルスクリプト
-
シェル運用コマンド
-
子孫ジョブ
詳細については,「CMDRC_THRESHOLD_DEFINEパラメーター(コマンドの終了コードのしきい値を定義する)」
-
(2) 常に正常終了するコマンドを定義する
#-adsh_rc_ignoreコマンドを使用すると,定義した名称のコマンドは,終了コードに関係なく常に正常終了します。その場合,対象コマンドの終了コードはジョブステップの成功または失敗の判定に影響しません。
ただし,コマンドがシグナル終了した場合は,指定に関係なくコマンドエラー終了になります。
なお,次に示すコマンドは,終了コードが0以外でもエラーになりません。したがって,このコマンドの指定に関係なく終了コードを無視します。
-
trueコマンド,falseコマンド
#-adsh_rc_ignoreコマンドの定義は,指定した個所以降のジョブ定義スクリプト実行で有効となります。ジョブステップ外に指定した場合はジョブ定義スクリプト全体に有効で,ジョブステップ内に指定した場合はジョブステップ内だけで有効です。ジョブステップ内に指定した場合,指定した個所以降からジョブステップ終了まで有効となり,ジョブステップ外に指定した値は一時的に無効になります。また,ジョブステップ内に指定するまではジョブステップ外に指定した値が有効になります。
指定例を次に示します。
01: #!/opt/jp1as/bin/adshexec 02: #-adsh_job JOB0001 03: 04: uap01 05: uap02 06: #-adsh_rc_ignore uap03,uap04 ←1. ジョブステップ外に指定 07: uap03 ←行07〜14の指定が1.の有効範囲 08: 09: #-adsh_step_start STEP1 10: uap04 11: #-adsh_step_end 12: 13: #-adsh_step_start STEP2 14: uap05 15: #-adsh_rc_ignore uap06,uap07 ←2. ジョブステップ内に指定 16: uap06 ←行16〜17の指定が2.の有効範囲 17: uap07 18: #-adsh_step_end 19: 20: #-adsh_step_start STEP4 ←行20〜22の指定が1.の有効範囲 21: uap08 22: #-adsh_step_end