代表的な機能を使ったbsortコマンドの使用例を示します。
例1 ソート処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドは、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。
コマンド記述例
bsort -s -z100 -0.10asca -o bsortout bsortin -s : ソート機能 -z100 : レコード長 -0.10asca : キーフィールド -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
例2 マージ処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortin1とbsortin2のレコードをマージして、ファイルbsortoutに出力します。ファイルbsortin1とbsortin2は、それぞれレコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順にソートしたファイルです。
コマンド記述例
bsort -m -z100 -0.10asca -o bsortout bsortin1 bsortin2 -m : マージ機能 -z100 : レコード長 -0.10asca : キーフィールド -o bsortout : 出力ファイル名 bsortin1 : 入力ファイル名 bsortin2 : 入力ファイル名
例3 コピー処理の例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードを、富士通COBOLのレコード順ファイルbsortoutにコピーします。
コマンド記述例
bsort -c -z100 -Zf -Fcobs64,ufs -o bsortout bsortin -c : コピー機能 -z100 : レコード長 -Zf : レコード形式 -Fcobs64,ufs : 入出力ファイルシステム -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
例4 レコード選択機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortin1と富士通COBOLのレコード順ファイルbsortin2のレコードをマージして、富士通COBOLのレコード順ファイルbsortoutに出力します。入力ファイルは、21バイト目から長さ4バイトの固定小数点2進数のフィールドが昇順にソートされているものとします。さらに、マージの際、31バイト目から長さ4バイトの固定小数点2進数の値が30以上40未満のレコードだけを処理の対象とします。
コマンド記述例
bsort -m -z100 -Zf -20.4fbia -p30.4fbi.ge.d30,30.4fbi.lt.d40 -Fcobs64,ufs,cobs64 -o bsortout bsortin1 bsortin2 -m : マージ機能 -z100 : レコード長 -Zf : レコード形式 -20.4fbia : キーフィールド -p30.4fbi.ge.d30,30.4fbi.lt.d40 : 選択フィールド -Fcobs64,ufs,cobs64 : 入出力ファイルシステム -o bsortout : 出力ファイル名 bsortin1 : 入力ファイル名 bsortin2 : 入力ファイル名
例5 レコード再編成機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。さらに、ソート処理と同時にレコードを再編成します。再編成は、レコードの左端に入力レコードの11バイト目から長さ20バイトを、その右に外部10進数の形式で長さ10バイトのフィールドを置き、その値に0を設定するという指定です。
コマンド記述例
bsort -s -z100 -0.20ascr -e10.20,d0.10zdl -o bsortout bsortin -s : ソート機能 -z100 : レコード長 -0.20ascr : キーフィールド -e10.20,d0.10zdl : 再編成フィールド -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
ポイント
レコード再編成機能を使用する場合、キーフィールドはレコード再編成後の位置を指定します。
例6 レコード集約機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、集約フィールドで指定した51バイト目から長さ8バイトの内部10進数のフィールドを加算して、レコードを1つに集約します。
コマンド記述例
bsort -s -z100 -10.20ascr -g50.8pdl -o bsortout bsortin -s : ソート機能 -z100 : レコード長 -10.20ascr : キーフィールド -g50.8pdl : 集約フィールド -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
ポイント
キーフィールドが等しいレコードの中からどのレコードに集約されるかは不定です。
例7 サプレス機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、1つのレコードを残して他を削除します。
コマンド記述例
bsort -s -u -z100 -10.20ascr -o bsortout bsortin -s : ソート機能 -u : サプレス機能 -z100 : レコード長 -10.20ascr : キーフィールド -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
ポイント
キーフィールドが等しいレコードの中からどのレコードが出力されるかは不定です。
例8 先入力先出力(FIFO)機能を使った例
レコード長100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortoutに出力します。キーフィールドの指定は、レコードの11バイト目から長さ20バイトのASCIIコードのフィールドを降順に並べる指定です。ソート処理の際、キーフィールドが等しいレコードが現れた場合、入力ファイルに格納されていた順序で出力します。
コマンド記述例
bsort -s -f -z100 -10.20ascr -o bsortout bsortin -s : ソート機能 -f : 先入力先出力(FIFO)機能 -z100 : レコード長 -10.20ascr : キーフィールド -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
例9 テキストファイルをソートする例(固定フィールド指定)
最大レコード長が100バイトのテキストファイルbsortinのレコードをソートして、テキストファイルbsortoutに出力します。キーフィールドの指定は、レコードの9バイト目から長さ4バイトのASCIIコードのフィールドを昇順に並べる指定です。
コマンド記述例
bsort -s -z100 -8.4asca -Tfix -o bsortout bsortin -s : ソート機能 -z100 : 最大レコード長 -8.4asca : キーフィールド -Tfix : テキストファイル固定フィールド指定 -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
例10 テキストファイルをソートする例(浮動フィールド指定)
最大レコード長が100バイトのテキストファイルbsortinのレコードをソートして、テキストファイルbsortoutに出力します。キーフィールドの指定は、レコード分離文字「コロン(:)」で区切られた2番目のフィールドの先頭から長さ4バイトのASCIIコードのフィールドを昇順に並べる指定です。
コマンド記述例
bsort -s -z100 -1.4asca -Tflt -t: -o bsortout bsortin -s : ソート機能 -z100 : 最大レコード長 -1.4asca : キーフィールド -Tflt : テキストファイル浮動フィールド指定 -t: : フィールド分離文字 -o bsortout : 出力ファイル名 bsortin : 入力ファイル名
例11 出力ファイル切換え機能を使った例
レコード長が100バイトのバイナリ固定長ファイルbsortinのレコードをソートして、ファイルbsortout1に出力します。ファイルbsortout1がファイルシステムの許容量を超えた場合、ファイルbsortout2に残りのレコードを出力します。キーフィールドの指定は、レコードの先頭から長さ10バイトのASCIIコードのフィールドを昇順に並べる指定です。
コマンド記述例
bsort -s -z100 -0.10asca -o bsortout1 -o bsortout2 bsortin -s : ソート機能 -z100 : レコード長 -0.10asca : キーフィールド -o bsortout1 : 出力ファイル名 -o bsortout2 : 出力ファイル名(ファイルシステムの許容量超過時) bsortin : 入力ファイル名