[Canna-dev 363] mkbindicのsortオプションが一部環境で動作しない

アーカイブの一覧に戻る

Sugano Yoshihisa (E) koshi****@misao*****
2008年 3月 20日 (木) 19:01:34 JST


すがのです。

最近Macを購入してさっそくCannaを入れてみたのですが、mkbindicが動作しな
いようです。

エラーメッセージを見てみると、Macのsortが +0 -1 というオプションをサポー
トしてないためのようです。

GNUのsortのmanpageを見てみますと、

http://www.linux.or.jp/JM/html/GNU_textutils/man1/sort.1.html
>  +POS1 [-POS2]
>      各行でソートキーとして用いるフィールドを指定する。 POS1 から
>      POS2 の直前の部分 (POS2 が与えられなかった場合は行末まで) がフィールド
>      となる。フィールドと文字位置は 0 から始まる。 
>  -k POS1[,POS2]
>      ソートキーを指定する別法。フィールドと文字位置は 1 から始まる。

ということのようで、後者がPOSIXオプション、前者はobsoleteらしいです。

sortcmd="sort -d -s -0 +1"

この行を、

sortcmd="sort -d -s -k 1,2"

こうすればいいようです。

ただ一部のmanpage(手元のDebianの日本語man)には-kオプションの場合もフィー
ルドと文字位置は0から始まるとかかれているようで、そのような実装が存在
してるのかは調査してません。
Debianの英語manageにはもう-kオプションしかかかれてないですね。

-- 
Sugano Yoshihisa(E) <koshi****@misao*****>




Canna-dev メーリングリストの案内
アーカイブの一覧に戻る