SourceForge.JP: Open Source Software

LoginCreate AccountHelp

[RSS]OpenSource Downloads

(10,540) Cabos
(2,730) CrystalDiskInfo
(2,196) 7-Zip
(1,935) HandBrake Japanese Language Version
(1,477) Tera Term
(1,127) ギコナビ
(878) Tween
(846) BathyScaphe
(805) ffdshow
10  (708) VirtualDubMod-jp
11  (653) CrystalDiskMark
12  (619) Amateras
13  (435) MergeDoc
14  (396) えこでこツール
15  (393) WordPress Plugins/JSeries
More >>

最近ブックマークされた記事

Magazine 最新特集記事

インテル Atom プロセッサー向け インテル アプリケーション・ソフトウェア開発ツール・スイートで行うMoblinアプリケーション開発

 Moblinの標準開発環境の構築やMoblin SDKの利用、そしてデバッガやプロファイラといった開発ツールの利用法などを解説。

オープンソースソフトウェアで強化するWindowsデスクトップ

 システムカスタマイズツールやマルチメディア関連ソフトウェア、バックアップツールなど、有用なWindows向けオープンソースソフトウェアを紹介。

大幅なスペックアップで生まれ変わった超小型Linuxサーバー「OpenBlockS 600」徹底活用

 超小型のLinuxサーバー「OpenBlockS 600」を紹介。ルータ・ブリッジとしての利用など、実運用に向けての利用例やセットアップ例を解説。

msortでデータをソートする

2008年05月21日 11:40AM 1 2 3
  • スラッシュドットにタレコむ
  • あとで読む
  msort はテキストファイルをソートするためのツールである。インタフェースはコマンドラインとグラフィカルの両方があり、ファイル中の何をソートキーにし、どのようにソートするかを、いくつもの方法のなかから選択できる。

 ほとんどのLinuxシステムにインストールされているGNU sortプログラムと比べたとき、ソートキーの所在指定とソート順指定の柔軟性ではmsortが勝る。また、msortは国際化を重視していて、UTF-8を完全サポートするし、ソートキーごとに異なるロケールを用いてファイルをソートできるし、非西欧式の記数法で表された数値もサポートする。

 msortには、Gutsy(Ubuntu 7.10)、openSUSEFedora 7用のパッケージがあるが、本稿ではバージョン8.44を用いてソースからビルドする。msortビルドにどのような機能を取り入れたいかにより、いくつかの必須もしくは任意の依存関係がある。たとえば、非西欧式の記数法で表された数値を扱うのに、msortはUninumライブラリを使用する。もちろん、この機能が不要なら、Uninumサポートなしでmsortをコンパイルしてよい(Fedora 8といくつかのopenSUSEバージョンにはUninumパッケージがあるが、Gutsyにはない)。msortのグラフィカルインタフェースには、Tcl/Tkiwidgetsライブラリ(GutsyopenSUSE 10.3Fedora 8用がある)が必要である。ソースからmsortをコンパイルするには、通常の「./configure; make; sudo make install」の手順をたどればよい。msortでUTF-8テキストを扱うには2通りのオプションがある。1つはutf8procパッケージを使うことであり、もう1つはlibicuを使うことである。msortの作者は、utf8procでなくlibicuサポートを使ってコンパイルするよう勧めている。

 ソートするデータをレコードに分割することはよく行われる。たとえば、いくつかのテキスト行をソートするとしよう。この場合、各行を1つのレコードとみなして、それぞれの一部をソートキーに指定することができる。たとえば、人名を含んでいるファイルのソートなら、ラストネームに注目して出力の順序を決める、などである。ソートキーだけではデータの完全ソートが保証されないときは、使用できる第2のソートキーを指定しておくとよいだろう。たとえば、第1のソートキーがファイル名のエクステンションなら、第2のソートキーとしてファイル名そのものを使う。こうすると、同じエクステンションを持つすべてのファイルが1つにまとまって出力され、そのファイルどうしの前後関係はファイル名によって決まることになる。

Ben-Martin(2008年5月19日(月))
2008年07月21日 05:07PM 更新