4.5.5 環境変数
入出力ファイル名,一時ファイルを作成するディレクトリ名,または比較の条件となる値(条件値)を,環境変数名で指定できます。環境変数名はパーセント(%)で囲んで指定してください。また,空白文字を含んだ環境変数名を指定する場合は,環境変数名ごとにダブルクォーテーション(")で囲んで指定してください。なお,UNIXのBシェル系では,空白を含む環境変数名を指定できません。指定例を次に示します。
-inpfile file="%SORTIN△1%" "%SORTIN△2%" -outfile file=%SORTOUT% -sorttmpdir "%dir△sorttemp%" -inpfile csvinclude=h+1-8,9 > H'"%TIME△VALUE%"' |
- (凡例)
-
△:半角スペース(空白)を示します。
環境変数を指定できるパラメタおよびオペランドを次の表に示します。
項目 |
パラメタ |
オペランド |
備考 |
---|---|---|---|
入出力ファイル名 |
-inpfile -splitinp -outfile -catout |
file |
− |
-catinp -splitout |
file |
− |
|
{suffix|prefix} |
− |
||
一時ファイルを作成するディレクトリ名 |
-sorttmpdir |
− |
|
-mergetmpdir |
− |
||
-splittmpdir |
− |
||
比較の条件となる値 (条件値) |
-inpfile -splitinp -catinp -outfile -splitout -catout |
{include|omit} |
指定できる条件値を次に示します。
|
{csvinclude|csvomit} |
(1) 入出力ファイル名
-
入出力ファイル名に「%環境変数名%」が指定された場合,指定された環境変数に定義された値をファイル名として扱います。
-
環境変数名に複数のファイル名を関連づける場合,Windowsではセミコロン(;)で,UNIXではコロン(:)で区切って指定してください。また,ファイル名が空白を含む場合,UNIXではダブルクォーテーション(")で囲ってください。指定例を次に示します。
- (Windows)
-
set SORTIN△1=D:\master\uriage△01;D:\master\uriage△02;D:\master\uriage△03 set SORTOUT=E:\newmaster\uritotal
- (UNIX Bシェル系)
-
SORTIN="/master/uriage△01:/master/uriage△02:/master/uriage△03" SORTOUT=/newmaster/uritotal
- (UNIX Cシェル)
-
setenv "SORTIN△1" "/master/uriage△01:/master/uriage△02:/master/uriage△03" setenv SORTOUT /newmaster/uritotal
- (凡例)
-
△:半角スペース(空白)を示します。
(2) 一時ファイルを作成するディレクトリ名
-
SORT EE 08-50以降,一時ファイルを作成するディレクトリ名を「%環境変数名%」で指定できます。
-
一時ファイルを作成するディレクトリ名に「%環境変数名%」を指定し,かつディレクトリ名”%環境変数名%”が存在した場合,「%環境変数名%」は一時ファイル作成用ディレクトリ名として扱われます。ディレクトリ名”%環境変数名%”が存在しない場合,指定された環境変数に定義された値が,一時ファイルを作成するディレクトリ名として扱われます。
例を次に示します。
(3) 比較の条件となる値(条件値)
-
SORT EE 08-30以降,条件値「H'日付T時刻'(CSVファイルだけ)」を「%環境変数名%」で指定できます。
-
SORT EE 08-50以降,次の条件値を「%環境変数名%」で指定できます。
-
S'文字列'
-
N'固定小数点数'
-
X'16進数'
-
D'日付'
-
D'マスク日付'(CSVファイルだけ)
-
H'マスク日付Tマスク時刻'(CSVファイルだけ)
-
-
文字条件値を環境変数で指定する場合は「S'文字列'」を指定してください。条件値「C'%環境変数名%'」と指定した場合,「%環境変数名%」は文字列として扱われます。
例を次に示します
環境変数「ENV」に文字列「12345」を設定した場合,選択条件値1の「C'%ENV%'」は文字列として扱われるため,値が「%ENV%」のレコードが選択されます。選択条件値2の「S'%ENV%'」は環境変数として扱われるため,値が「12345」のレコードが選択されます。
-
次の条件値に指定した環境変数名を,パーセント(%)で囲んでいない場合は,KBLS1314-Eエラーとなります。
-
N'固定小数点数'
-
X'16 進数'
-
D'日付'
-
D'マスク日付'(CSVファイルだけ)
-
H'日付T時刻'(CSV ファイルだけ)
-
H'マスク日付Tマスク時刻'(CSVファイルだけ)
-
-
条件値「S'文字列'」に指定した環境変数名を,パーセント(%)で囲んでいない場合はエラーとなりません。指定された値が文字列として扱われます。例えば,条件値「S'%s_value'」と指定した場合は,入力データが「%s_value」のレコードが選択されます。
設定する条件値の詳細は,「5.8.16 {include|omit}オペランド」または「5.8.17 {csvinclude|csvomit}オペランド」を参照してください。