代表的な機能を使ったbsortexコマンドの使用例を示します。
例1 ソート処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドは、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=0.10asca -input reclen=100 file=bsortin -output file=bsortout
-sort : ソート機能
key=0.10asca : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout : 出力ファイル名例2 マージ処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortin1とbsortin2のレコードをマージして、ファイルbsortoutに出力します。ファイルbsortin1とbsortin2は、それぞれレコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順にソートしたファイルです。

コマンド記述例
bsortex -merge key=0.10asca -input reclen=100 file=bsortin1,bsortin2 -output file=bsortout
-merge : マージ機能
key=0.10asca : キーフィールド
-input
reclen=100 : レコード長
file=bsortin1,bsortin2 : 入力ファイル名
-output
file=bsortout : 出力ファイル名例3 コピー処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードを、富士通COBOLのレコード順ファイルbsortoutにコピーします。

コマンド記述例
bsortex -copy -record recform=fix -input reclen=100 file=bsortin filesys=ufs -output file=bsortout filesys=cobs64
-copy : コピー機能
-record
recform=fix : レコード形式
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
filesys=ufs : 入力ファイルシステム
-output
file=bsortout : 出力ファイル名
filesys=cobs64 : 出力ファイルシステム例4 レコード選択機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortin1とbsortin2のレコードをマージして、富士通COBOLのレコード順ファイルbsortoutに出力します。入力ファイルは、21バイト目から長さ4バイトの固定小数点2進数のフィールドが昇順にソートされているものとします。さらに、マージの際、31バイト目から長さ4バイトの固定小数点2進数の値が30以上40未満のレコードだけを処理の対象とします。

コマンド記述例
bsortex -merge key=20.4fbia -record recform=fix -input reclen=100 file=bsortin1,bsortin2 filesys=ufs include=30.4fbi.ge.d30.and.30.4fbi.lt.d40 -output file=bsortout filesys=cobs64
-merge : マージ機能
key=20.4fbia : キーフィールド
-record
recform=fix : レコード形式
-input
reclen=100 : レコード長
file=bsortin1,bsortin2 : 入力ファイル名
filesys=ufs : 入力ファイルシステム
include=30.4fbi.ge.d30.and.30.4fbi.lt.d40 : 選択フィールド
-output
file=bsortout : 出力ファイル名
filesys=cobs64 : 出力ファイルシステム例5 レコード再編成機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。さらに、ソート処理と同時にレコードを再編成します。再編成は、レコードの左端に入力レコードの11バイト目から長さ20バイトを、その右に外部10進数の形式で長さ10バイトのフィールドを置き、その値に0を設定するという指定です。

コマンド記述例
bsortex -sort key=0.20ascr -input reclen=100 file=bsortin reconst=10.20,d0.10zdl -output file=bsortout
-sort : ソート機能
key=0.20ascr : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
reconst=10.20,d0.10zdl : 再編成フィールド
-output
file=bsortout : 出力ファイル名ポイント
入力ファイルのレコード再編成機能を指定する場合、キーフィールドはレコード再編成後の位置を指定します。
例6 レコード集約機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、集約フィールドで指定した51バイト目から長さ8バイトの内部10進数のフィールドを加算して、最初に入力したレコードに集約します。

コマンド記述例
bsortex -sort key=10.20ascr -input reclen=100 file=bsortin -summary field=50.8pdl first -output file=bsortout
-sort : ソート機能
key=10.20ascr : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-summary
field=50.8pdl : 集約フィールド
first : 最初に入力したレコードに集約
-output
file=bsortout : 出力ファイル名例7 サプレス機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、最後に入力したレコードを残して他を削除します。

コマンド記述例
bsortex -sort key=10.20ascr -input reclen=100 file=bsortin -summary suppress last -output file=bsortout
-sort : ソート機能
key=10.20ascr : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-summary
suppress : サプレス機能
last : 最後に入力したレコードを残す
-output
file=bsortout : 出力ファイル名例8 先入力先出力(FIFO)機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、入力ファイルに格納されていた順序で出力します。

コマンド記述例
bsortex -sort key=10.20ascr -input reclen=100 file=bsortin -output file=bsortout -option fifo
-sort : ソート機能
key=10.20ascr : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout : 出力ファイル名
-option
fifo : 先入力先出力(FIFO)機能例9 テキストファイルをソートする例(固定フィールド指定)
最大レコード長が100バイトのテキストファイルbsortinのレコードをソートして、テキストファイルbsortoutに出力します。キーフィールドの指定は、レコードの9バイト目から長さ4バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=8.4asca -record recform=txtfix -input reclen=100 file=bsortin -output file=bsortout
-sort : ソート機能
key=8.4asca : キーフィールド
-record
recform=txtfix : レコード形式(テキストファイル固定フィールド指定)
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout : 出力ファイル名例10 テキストファイルをソートする例(浮動フィールド指定)
最大レコード長が100バイトのテキストファイルbsortinのレコードをソートして、テキストファイルbsortoutに出力します。キーフィールドの指定は、レコード分離文字「コロン(:)」で区切られた2番目のフィールドの先頭から長さ4バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=1.4asca -record recform=txtflt fldsep=: -input reclen=100 file=bsortin -output file=bsortout
-sort : ソート機能
key=1.4asca : キーフィールド
-record
recform=txtflt : レコード形式(テキストファイル浮動フィールド指定)
fldsep=: : フィールド分離文字
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout : 出力ファイル名例11 ファイルの分割出力機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortout1とbsortout2に出力します。出力ファイルサイズの上限は1GBとします。キーフィールドの指定は、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=0.10asca -input reclen=100 file=bsortin -output file=bsortout1,bsortout2 maxfilesize=1G
-sort : ソート機能
key=0.10asca : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout1,bsortout2 : 出力ファイル名
maxfilesize=1G : 出力ファイルサイズの上限値の設定例12 条件別ファイル出力機能を使った例(その1)
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortout1とbsortout2に出力します。bsortout1には、レコードの31バイト目から長さ4バイトの内部10進数のフィールドが100以上のレコードを出力します。bsortout2には、レコードの51バイト目から長さ8バイトの外部10進数のフィールドが50未満のレコードを出力します。キーフィールドの指定は、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=0.10asca -input reclen=100 file=bsortin -output file=bsortout1 include=30.4pdl.ge.d100 -output file=bsortout2 include=50.8zdl.lt.d50
-sort : ソート機能
key=0.10asca : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout1 : 出力ファイル名
include=30.4pdl.ge.d100 : 選択フィールド
-output
file=bsortout2 : 出力ファイル名
include=50.8zdl.lt.d50 : 選択フィールドポイント
includeオペランドでは、それぞれの-outputオプションで指定した選択条件が成立したレコードを、それぞれの出力ファイルへ出力します。したがって、上記の例では、レコード3はbsortout1にもbsortout2にも出力されます。
例13 条件別ファイル出力機能を使った例(その2)
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortout1、bsortout2、およびbsortout3に出力します。bsortout1には、レコードの31バイト目から長さ4バイトの内部10進数のフィールドが100以上のレコードを出力します。bsortout2には、bsortout1に出力されなかったレコードの中からレコードの51バイト目から長さ8バイトの外部10進数のフィールドが50未満のレコードを出力します。bsortout3には、bsortout1にもbsortout2にも出力されなかったレコードを出力します。キーフィールドの指定は、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。

コマンド記述例
bsortex -sort key=0.10asca -input reclen=100 file=bsortin -output file=bsortout1 case=30.4pdl.ge.d100 -output file=bsortout2 case=50.8zdl.lt.d50 -output file=bsortout3 case=other
-sort : ソート機能
key=0.10asca : キーフィールド
-input
reclen=100 : レコード長
file=bsortin : 入力ファイル名
-output
file=bsortout1 : 出力ファイル名
case=30.4pdl.ge.d100 : 選択フィールド
-output
file=bsortout2 : 出力ファイル名
case=50.8zdl.lt.d50 : 選択フィールド
-output
file=bsortout3 : 出力ファイル名
case=other : 選択フィールド(出力されなかったレコードを出力)ポイント
caseオペランドでは、-outputオプションの指定順に選択条件と比較し、条件が成立したレコードを、その-outputオプションで指定した出力ファイルへ出力します。既に出力されたレコードは、以降の-outputオプションでは出力対象となりません。したがって、上記の例では、レコード3はbsortout1だけに出力されます。