2.6.12 ジョブ定義スクリプトをUNIXからWindowsへ移行する
UNIXのジョブ定義スクリプトをWindowsのジョブ定義スクリプトに移行する場合,次の手順を実施します。なお,この手順を実施する前に,ジョブ定義スクリプトと環境ファイルのエンコーディングが,移行するプラットフォームで使用するLANG環境変数と一致していることを確認してください。
-
パスを変換する機能を有効にする。
UNIXのジョブ定義スクリプトの区切り文字をWindowsのプラットフォームに変換するために,環境ファイルに次のパラメーターを指定します。
#-adsh_conf PATH_CONV_ENABLE / :
-
記述されたパスを変換するための設定を実施する。
ジョブ定義スクリプト中で,プログラムのパスを明示的に指定している場合は,Windowsの環境に合わせて変換するために,環境ファイルに次のパラメーターを指定します。UNIX互換コマンドのパスを変換する例を記載します。
#-adsh_conf PATH_CONV /opt/jp1as "C:\\Program Files\\HITACHI\\JP1AS\\JP1ASE"
-
パスを扱うシェル変数の周りの区切り文字を変換するための設定を実施する。
ジョブ定義スクリプト中でプログラムのパスをシェル変数を使って記述している場合は,そのシェル変数を使用しているパスの区切り文字を変換するためにジョブ定義スクリプトごとに次のコマンドを追加します。
#-adsh_path_var VAR
-
パス変換ルールを選択する。【Windows限定】
パスの変換ルールをPATH_CONV_RULEパラメーターで指定します。
ダブルクォーテーション(")で囲んだ個所だけを変換したい場合,次のようにパス変換ルール1を指定します。
#-adsh_conf PATH_CONV_RULE 1
ダブルクォーテーション(")で囲んだ個所以外も変換したい場合,次のようにパス変換ルール2を指定します。
#-adsh_conf PATH_CONV_RULE 2
-
変換が有効であることを確認する。
パス変換ルール1の場合,パスを変換したい個所が次の例のようにダブルクォーテーション(")で囲まれていることを確認します。
"$VAR/cmd/ls" -l "/opt/jp1as/sample"
パス変換ルール2の場合,変換したくない個所がシングルクォーテーション(')で囲まれていることを確認します。
-
パスの変換結果を事前に確認する。
ジョブ定義スクリプトの文法チェック(adshexec -cコマンド)を実施し,生成されたスクリプトイメージでパスの変換結果を確認します。変換結果が適切でない場合は,パス変換ルールを変更するか,ジョブ定義スクリプトを変更して再実行してください。
パス変換ルール1とパス変換ルール2の変換例を次に示します。
-
パス変換ルール1での変換例
<環境設定パラメーター>
#-adsh_conf PATH_CONV_ENABLE / : #-adsh_conf PATH_CONV_RULE 1 #-adsh_conf PATH_CONV /opt/jp1as "c:\\Program Files\\HITACHI\\JP1AS\\JP1ASE"
<変換例>
D:\home\user001>"C:\Program Files\HITACHI\JP1AS\JP1ASE\bin\adshexec" -c sample1.ash ***** D:\home\user001\sample1.ash ***** 0001 : #-adsh_job SAMPLE 0002 : #-adsh_path_var VAR 0003 : 0004 : VAR=/opt/jp1as 0005 : "$VAR/cmd/ls" -l "/opt/jp1as/sample" 0006 : ***** converted lines in D:\home\user001\sample1.ash ***** 0005 : "$VAR\\cmd\\ls" -l "c:\\Program Files\\HITACHI\\JP1AS\\JP1ASE\\sample" KNAX7999-I JP1/Advanced Shell ended. rc=0 D:\home\user001>
-
パス変換ルール2での変換例
<環境設定パラメーター>
#-adsh_conf PATH_CONV_ENABLE / : #-adsh_conf PATH_CONV_RULE 2 #-adsh_conf PATH_CONV /opt/jp1as "c:\\Program Files\\HITACHI\\JP1AS\\JP1ASE"
<変換例>
D:\home\user001>"C:\Program Files\HITACHI\JP1AS\JP1ASE\bin\adshexec" -c sample1.ash ***** D:\home\user001\sample1.ash ***** 0001 : #-adsh_job SAMPLE 0002 : #-adsh_path_var VAR 0003 : 0004 : VAR=/opt/jp1as 0005 : "$VAR/cmd/ls" -l "/opt/jp1as/sample" 0006 : ***** converted lines in D:\home\user001\sample1.ash ***** 0004 : VAR="c:\\Program Files\\HITACHI\\JP1AS\\JP1ASE" 0005 : "$VAR\\cmd\\ls" -l "c:\\Program Files\\HITACHI\\JP1AS\\JP1ASE\\sample" KNAX7999-I JP1/Advanced Shell ended. rc=0 D:\home\user001>