ソートマージ


14.2.1 SORTの環境変数

〈この項の構成〉

(1) SORTOPT

環境変数SORTOPTを指定することによって,コマンド省略時に設定される値を変更できます。

SORTOPTで使用できるオプションを次の表に示します。

表14‒15 SORTOPTのオプション一覧

オプション

機能

コマンド

ソート

マージ

選択

集約

-y

ワークバッファサイズの初期値設定

×

×

×

-T

ソート用一時ファイルを割り当てるディレクトリ

×

×

×

-T2

マージ用一時ファイルを複数割り当てる場合のディレクトリ

×

×

×

-g

日付項目の基準年度

-E

選択条件値の特殊記号「\」の有効化

×

×

×

-SORT_EE

機能拡張オプションを有効にする

(凡例) ○:有効  ×:無効

(a) 複数のオプションの指定例

各オプションの指定順序は任意です。複数のオプションを指定する場合,コンマ(,)で区切って指定します。コンマの前後に空白またはタブを入れないでください。

(例)
SORTOPT=-y2m,-T/tmp/SORTWORK,-g90

(b) -yオプション(ワークバッファサイズの初期値指定)

ワークバッファサイズはKB(k)またはMB(m)単位の1〜7桁の数字で指定します。指定できるメモリ量を次に示します。

  • レコード長(可変長ファイルの場合,最大レコード長)が32,760バイト以下の場合

    • 32ビット版では128KB以上

    • 64ビット版では256KB以上

  • レコード長が32,760バイトを超える場合

    • 32ビット版では256KB以上

    • 64ビット版では384KB以上

なお,指定できるメモリ量の最大値は,2,000MBです。

また,単位を省略した場合は,KB(k)が設定されます。

指定方法を次に示します。

SORTOPT=-yワークバッファサイズ

(c) -Tオプション(ソート用一時ファイルを割り当てるディレクトリ)

ソート用一時ファイルを割り当てるディレクトリを指定できます。この指定は,ソートの実行時だけ有効となります。指定方法を次に示します。

SORTOPT=-Tディレクトリ名

使用するディレクトリの優先順位については,「7.2.2(7) -Tディレクトリ名」を参照してください。

ソート用一時ファイルを割り当てるディレクトリについては,「7.2.3(6) 一時ファイルを割り当てるディレクトリ」を参照してください。

(d) -T2オプション(マージ用一時ファイルを割り当てるディレクトリ)

マージ用一時ファイルを割り当てるディレクトリを指定できます。この指定は,ソートの実行時だけ有効となります。指定方法を次に示します。

SORTOPT=-Tディレクトリ名,-T2ディレクトリ名2

使用するディレクトリの優先順位については,「7.2.2(8) -T2ディレクトリ名2」を参照してください。

マージ用一時ファイルを割り当てるディレクトリについては,「7.2.3(6) 一時ファイルを割り当てるディレクトリ」を参照してください。

(e) -gオプション(日付(英数字)項目の基準年度)

日付(英数字)項目でソートするときに最小値とする基準年度を指定できます。基準年度には,西暦下2桁の数値を,2桁以下の数値で指定します。基準年度に指定した年度の項目は,キーの比較時に先頭に位置づけられます。また,指定した年度の数値より小さい値には,100を加えた値が設定されます。

指定方法を次に示します。

SORTOPT=-g基準年度

この指定は,キーに日付(英数字)項目を指定した場合だけ有効となり,省略した場合は,70が設定されます。また,0を指定した場合の比較結果は,文字項目で指定した結果と同じとなります。

(f) -Eオプション(選択条件値の特殊記号「¥」の有効化)

選択機能の選択条件値に特殊記号「\」を指定する場合「\\」と指定します。ただし,Cシェル以外のシェルの場合,「\\」が認識できない場合があります。この場合は,-Eオプションを指定してください。

-Eオプションを指定すると,Cシェル以外のシェルでも「\\」が認識できるようになります。

指定方法を次に示します。

SORTOPT=-E

この指定は,選択条件値に特殊記号「\」を指定し,選択コマンドをCシェル以外のシェルで実行する場合に有効となります。選択コマンドをCシェルで実行する場合,または選択条件値に特殊記号「'」(クォーテーション)を指定し選択コマンドを実行する場合は,-Eオプションを指定しないでください。

(g) -SORT_EEオプション(機能拡張オプションの有効)

SORTの機能拡張オプションを使用する場合,-SORT_EEオプションを指定します。

SORTの機能拡張オプションについては,「2.22 SORTの機能拡張オプション(SORTの機能)」を参照してください。

指定方法を次に示します。

SORTOPT=-SORT_EE

(2) SORT_BOMLNGIN

環境変数SORT_BOMLNGINを指定することによって,Unicodeシグニチャの読み飛ばし機能を使用できます。

UTF-8のテキスト編成ファイルの場合,Unicodeシグニチャとして(X'EFBBBF')を入力ファイルから読み飛ばさせるオプションに「UNICODE」を指定します。

指定方法を次に示します。

SORT_BOMLNGIN=UNICODE

(3) SORT_BOMLNGOUT

環境変数SORT_BOMLNGOUTを指定することによって,Unicodeシグニチャの付加機能を使用できます。

UTF-8のテキスト編成ファイルの場合,Unicodeシグニチャとして(X'EFBBBF')を出力ファイルに付加するオプションに「UTF8」を指定します。

指定方法を次に示します。

SORT_BOMLNGOUT=UTF8

(4) SORT_STRINGDIR

環境変数SORT_STRINGDIRを指定することによって,ソート機能が「KBLS290-E メモリが不足しました。」のエラーで異常終了しない機能を使用できます。

ソート用ワークバッファ内のSORT情報を一時ファイルに格納するための一時ファイルディレクトリを指定します。

この指定は,固定長順編成ファイル,可変長順編成ファイル,またはテキストファイルに対してソート機能を実行した場合だけ有効となります。メッセージが表示された場合の原因と対処方法の詳細は,「付録L.4 SORTのメッセージ一覧」を参照してください。

指定方法を次に示します。

SORT_STRINGDIR=ストリング情報格納一時ファイルディレクトリ

指定するディレクトリには,rsortまたはrsort64コマンド実行ユーザの,読み込みおよび書き込み権限が必要です。また,NFSなどの共用ボリュームは指定しないでください。

(5) SORT_DMPDIR

SORTのコマンド処理が異常終了した場合に作成されるデバッグ情報ファイルの出力先ディレクトリを指定します。デバッグ情報ファイルの詳細は,「19.2.2 デバッグ情報ファイル」を参照してください。

指定方法を次に示します。

SORT_DMPDIR=デバッグ情報ファイルの出力先ディレクトリ名