並べ替え sort.pl


【処理説明】

入力データをパラメータで指定されたキーで並べ替える。数値の合計や、重複データの削除も行う。

標準入力(STDIN)、標準出力(STDOUT)を使用しています。固定長のテキストファイルを扱うのに便利です。
また標準エラー出力(STDERR)に処理開始終了時刻や処理件数を表示しています。

【使用方法】

  1. Perlの場所(1行目)をご使用の環境にあわせて書き換えてください。
  2. 元々Windows用に作成したので、UNIX系の場合、最初のほうの $sep = "\\";$sep = "/"; に修正したほうがいいかもしれません (^_^;)
sort.plキー(キー...)(作業用ディレクトリ指定)({ 合計指定 })
重複削除指定

キー : 開始桁位置,桁数(,{ ASC })
DESC

作業用ディレクトリ指定 : wkdir=作業用ディレクトリ
合計指定 : sum=開始桁位置,桁数(sum=開始桁位置,桁数...)
重複削除指定 : dup=delete

  • キーの並び順を、ASC(昇順)またはDESC(降順)で指定します(省略時はASC)。
  • キーは「」(空白)で区切り複数指定できます。
  • 作業用ディレクトリ指定省略時は、カレント ディレクトリを作業用に使用します。
  • 合計指定は、sum= に続けて、開始桁位置と桁数を指定します(複数指定可)。
  • 重複削除指定は、dup=deleteを指定します。削除時は常にFIFO(First In First Out : 先頭レコードのみ残す)で行います。
  • 合計指定と重複削除指定は、同時に指定できません。
  • 大文字でも小文字でも同一視します。

記号の説明:
:空白    ():任意    {}:選択    下線:既定値

【使用例】

sort.pl 10,1 15,2,DESC <input.txt >output.txt

input.txtファイルを、10桁目から1桁(昇順)、15桁目から2桁(降順)で並べ替え output.txtファイルに出力する。

sort.pl 1,10 WKDIR=C:\Temp SUM=21,6 SUM=31,12 <input.txt >output.txt

input.txtファイルを、1桁目から10桁(昇順)で並べ替え、21桁目から6桁、31桁目から12桁の合計を算出して output.txtファイルに出力する。

本アプリケーションはフリーウェアです。
但し、動作不良等の修正、改版の義務は負いません。また、本ソフトウェアを使用中のトラブルについて一切責任を負いません

Ver 1.0a 2000-09-26 合計指定時、桁あふれの可能性があるバグを修正
Ver 1.0 2000-08-08 公開