sort (textutils) 2.0.21
Submitted by: SUZUKI Koichi <metal@gc5.so-net.ne.jp>
This commit is contained in:
parent
b001151637
commit
d40b6683bd
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=15637
1 changed files with 98 additions and 227 deletions
|
@ -1,244 +1,115 @@
|
||||||
.\" %FreeBSD: src/gnu/usr.bin/sort/sort.1,v 1.5.8.1 2001/07/22 11:01:34 dd Exp %
|
|
||||||
.\"
|
|
||||||
.\" $FreeBSD$
|
.\" $FreeBSD$
|
||||||
.TH SORT 1 "GNU Text Utilities" "FSF" \" -*- nroff -*-
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.25.
|
||||||
|
.TH SORT "1" "February 2002" "sort (textutils) 2.0.21" "User Commands"
|
||||||
.SH 名称
|
.SH 名称
|
||||||
sort \- テキストファイルを行でソートする
|
sort \- テキストファイルを行でソートする
|
||||||
.SH 書式
|
.SH 書式
|
||||||
.B sort
|
.B sort
|
||||||
[\-cmus] [\-t separator] [\-o output-file] [\-T tempdir] [\-bdfiMnr]
|
[\fIOPTION\fR]... [\fIFILE\fR]...
|
||||||
[+POS1 [\-POS2]] [\-k POS1[,POS2]] [file...]
|
|
||||||
.br
|
|
||||||
.B sort
|
|
||||||
{\-\-help,\-\-version}
|
|
||||||
.SH 解説
|
.SH 解説
|
||||||
このマニュアルページは GNU 版の
|
.\" Add any additional description here
|
||||||
.B sort
|
|
||||||
について書かれています。
|
|
||||||
.B sort
|
|
||||||
は、file が指定されていればそのファイルから、
|
|
||||||
ファイルが指定されない場合は標準入力からデータを読み込み、
|
|
||||||
入力した各行について、ソートやマージや比較を行います。
|
|
||||||
ファイル名 `-' は標準入力を意味します。
|
|
||||||
.B sort
|
|
||||||
はデフォルトでは標準出力に結果を書き出します。
|
|
||||||
.PP
|
.PP
|
||||||
.B sort
|
すべての FILE を結合したものをソートし、標準出力に書き込みます。
|
||||||
は、3 つの動作モードを持っています。
|
|
||||||
(デフォルトの) ソートと、マージと、ソートされているかどうかのチェックです。
|
|
||||||
以下のオプションで動作モードを変更します。
|
|
||||||
.TP
|
|
||||||
.I \-c
|
|
||||||
ファイルが既にソートされたものであるかどうかチェックします。
|
|
||||||
もし、ソートされてなければ、エラーメッセージを表示すると共に、
|
|
||||||
戻り値に 1 を返します。
|
|
||||||
.TP
|
|
||||||
.I \-m
|
|
||||||
複数のファイルをひとまとまりしてソートすることで、
|
|
||||||
それらをマージします。
|
|
||||||
個々のファイルは、あらかじめソートしておかなければなりません。
|
|
||||||
ソートはいつでもマージの代わりに動きます。
|
|
||||||
マージのオプションがあるのは、単なるマージですむ場合には、
|
|
||||||
その方がずっと高速だからです。
|
|
||||||
.PP
|
.PP
|
||||||
入力行は次のようにして比較されます。
|
順番を指定するオプションは以下です:
|
||||||
キーフィールドが指定されている時には、
|
|
||||||
.B sort
|
|
||||||
は、違いが見つかるかキーフィールドがなくなるまで、
|
|
||||||
コマンド行で指定された順に、キーフィールド同士を、
|
|
||||||
関連づけられた順序オプションに従い比較します。
|
|
||||||
.PP
|
.PP
|
||||||
もしグローバルオプション
|
長い形式のオプションに必要な引数は、短い形式のオプションでも必要です。
|
||||||
.I Mbdfinr
|
.HP
|
||||||
のどれかが指定され、キーフィールドが指定されなければ、
|
\fB\-b\fR, \fB\-\-ignore\-leading\-blanks\fR 先頭にある空白を無視します。
|
||||||
.B sort
|
.TP
|
||||||
はグローバルオプションにしたがって、行全体を比較します。
|
\fB\-d\fR, \fB\-\-dictionary\-order\fR
|
||||||
|
空白とアルファベット、数字以外を無視します。
|
||||||
|
.TP
|
||||||
|
\fB\-f\fR, \fB\-\-ignore\-case\fR
|
||||||
|
小文字を大文字に直します。
|
||||||
|
.TP
|
||||||
|
\fB\-g\fR, \fB\-\-general\-numeric\-sort\fR
|
||||||
|
一般的な数値による比較をします。
|
||||||
|
.TP
|
||||||
|
\fB\-i\fR, \fB\-\-ignore\-nonprinting\fR
|
||||||
|
印字可能文字以外を無視します。
|
||||||
|
.TP
|
||||||
|
\fB\-M\fR, \fB\-\-month\-sort\fR
|
||||||
|
(不明) < `JAN' < ... < `DEC' のように比較します。
|
||||||
|
.TP
|
||||||
|
\fB\-n\fR, \fB\-\-numeric\-sort\fR
|
||||||
|
数字列として比較します。
|
||||||
|
.TP
|
||||||
|
\fB\-r\fR, \fB\-\-reverse\fR
|
||||||
|
比較結果を逆順にします。
|
||||||
.PP
|
.PP
|
||||||
すべてのキーが等しい場合
|
その他のオプション:
|
||||||
(または順序を指示するオプションが全く指定されていない場合) 、
|
.TP
|
||||||
.B sort
|
\fB\-c\fR, \fB\-\-check\fR
|
||||||
は最終手段として、
|
入力がソートされているかチェックします。ソートしません。
|
||||||
そのマシンでの文字の照合順 (machine collating sequence) にしたがって、
|
.TP
|
||||||
各行をバイト毎に比較します。
|
\fB\-k\fR, \fB\-\-key\fR=\fIPOS1[\fR,POS2]
|
||||||
この最終手段においては、
|
キーを POS1 から開始し、POS2 までとします (1 オリジン)。
|
||||||
.I \-r
|
.TP
|
||||||
オプションが有効です。
|
\fB\-m\fR, \fB\-\-merge\fR
|
||||||
.I \-s
|
ソート済みのファイルをマージします。ソートしません。
|
||||||
(stable) オプションは、この最終手段の比較をやめて、
|
.TP
|
||||||
全てのキーフィールドが等しい行同士の相対的な出現順を保ちます。
|
\fB\-o\fR, \fB\-\-output\fR=\fIFILE\fR
|
||||||
キーフィールドやグローバルオプションを全く指定しない時には
|
結果を、標準出力ではなく FILE に書き込みます。
|
||||||
.I \-s
|
.TP
|
||||||
は効果を持ちません。
|
\fB\-s\fR, \fB\-\-stable\fR
|
||||||
|
最終手段の比較を無効にして、安定したソートを行います。
|
||||||
|
.TP
|
||||||
|
\fB\-S\fR, \fB\-\-buffer\-size\fR=\fISIZE\fR
|
||||||
|
メインメモリのバッファを SIZE にします。
|
||||||
|
.HP
|
||||||
|
\fB\-t\fR, \fB\-\-field\-separator\fR=\fISEP\fR 非空白文字から空白文字への変わり目ではなく、SEP を使用します。
|
||||||
|
.TP
|
||||||
|
\fB\-T\fR, \fB\-\-temporary\-directory\fR=\fIDIR\fR
|
||||||
|
一時ディレクトリとして $TMPDIR や /tmp ではなく DIR を使用します。
|
||||||
|
複数のオプション指定によって、複数のディレクトリを指定します。
|
||||||
|
.TP
|
||||||
|
\fB\-u\fR, \fB\-\-unique\fR
|
||||||
|
\fB\-c\fR が指定された場合、厳密な順序のチェックをします。
|
||||||
|
それ以外の場合、等しい連の最初の行のみ出力します。
|
||||||
|
.TP
|
||||||
|
\fB\-z\fR, \fB\-\-zero\-terminated\fR
|
||||||
|
行を、改行ではなく 0 のバイトで終了します。
|
||||||
|
.TP
|
||||||
|
\fB\-\-help\fR
|
||||||
|
このヘルプを表示し、終了します。
|
||||||
|
.TP
|
||||||
|
\fB\-\-version\fR
|
||||||
|
バージョン情報を出力し、終了します。
|
||||||
.PP
|
.PP
|
||||||
GNU
|
POS は F[.C][OPTS] という形式です。
|
||||||
.B sort
|
ここで F はフィールド番号で、C はフィールド内の文字位置です。
|
||||||
には、入力行の長さの制限 (行に含まれるバイト数の制限) はありません。
|
OPT は、1 つ以上の 1 文字順序オプションです。
|
||||||
また、入力ファイルの最後の 1 バイトが改行文字でない時には、
|
これは、このキーに対して、グローバルな順序オプションを上書きします。
|
||||||
GNU
|
キーの指定がない場合、1 行すべてがキーとなります。
|
||||||
.B sort
|
|
||||||
は黙って改行文字を補って処理を行います。
|
|
||||||
.PP
|
.PP
|
||||||
環境変数
|
SIZE には、以下の乗法的な接尾辞が続いても構いません:
|
||||||
.B TMPDIR
|
% メモリの 1% , b 1, K 1024 (デフォルト), 以下同様に M, G, T, P, E, Z, Y。
|
||||||
が設定されている場合、
|
|
||||||
.B sort
|
|
||||||
は、デフォルトの /tmp の代わりに、
|
|
||||||
これを作業ファイルを置くディレクトリとして用います。
|
|
||||||
.I "\-T tempdir"
|
|
||||||
オプションも作業ファイル用ディレクトリの指定に使えます。
|
|
||||||
この指定は環境変数よりも優先されます。
|
|
||||||
.PP
|
.PP
|
||||||
以下に示すオプションによって、出力行の順序付けを制御できます。
|
FILE の指定がない場合や FILE が - の場合は、標準入力を読み込みます。
|
||||||
これらはグローバルに指定したり、特定のキーフィールドについて
|
|
||||||
指定することもできます。
|
|
||||||
キーフィールドを指定しない時には、
|
|
||||||
グローバルオプションは行全体の比較に適用されます。
|
|
||||||
キーフィールドを指定した時には、
|
|
||||||
それ固有の指定を持たないキーフィールドに
|
|
||||||
グローバルオプションの動作が継承されます。
|
|
||||||
.TP
|
|
||||||
.I \-b
|
|
||||||
ソートキーを見つける時、先頭にある空白を無視します。
|
|
||||||
.TP
|
|
||||||
.I \-d
|
|
||||||
`電話帳順' でソートします。アルファベット、数字、空白以外の文字を無視します。
|
|
||||||
.TP
|
|
||||||
.I \-f
|
|
||||||
英小文字は大文字に直してソートします。
|
|
||||||
例えば、`b' は `B' と同様にソートされます。
|
|
||||||
.TP
|
|
||||||
.I \-i
|
|
||||||
ASCII である 040~0176 (8進、両端を含む) の範囲に含まれない
|
|
||||||
文字を無視します。
|
|
||||||
.TP
|
|
||||||
.I \-M
|
|
||||||
行先頭にある、空白の後ろに月の英語名の略称が続いた文字列を、
|
|
||||||
大文字に変換した上で、
|
|
||||||
`JAN' < `FEB' < ... < `DEC' の順で比較します。
|
|
||||||
月の名称でない文字列は、月の名称の文字列より小さいと見なされます。
|
|
||||||
.TP
|
|
||||||
.I \-n
|
|
||||||
行先頭にある数字列を、数値として比較します。
|
|
||||||
数字列は、空白 (オプション)、マイナス符号 (オプション)、
|
|
||||||
0 個以上の数字、小数点と 0 個以上の数字の組 (オプション)
|
|
||||||
から構成されます。
|
|
||||||
.TP
|
|
||||||
.I \-r
|
|
||||||
比較結果を逆にし、より大きなキー値を持つ行が出力で
|
|
||||||
先に出てくるようにします。
|
|
||||||
.PP
|
.PP
|
||||||
その他のオプションは以下の通りです。
|
*** 警告 ***
|
||||||
.TP
|
環境によって指定されるロケールは、ソートの順序に影響を及ぼします。
|
||||||
.I "\-o output-file"
|
生のバイトの値を用いる伝統的なソート順序にするには、
|
||||||
結果を標準出力の代わりに、
|
LC_ALL=C を設定してください。
|
||||||
.I output-file
|
.SH 作者
|
||||||
に出力します。
|
Mike Haertel と Paul Eggert によって書かれました。
|
||||||
.I output-file
|
.SH バグレポート
|
||||||
が入力ファイルの 1 つである場合、
|
バグは <bug-textutils@gnu.org> に報告してください。
|
||||||
|
.SH COPYRIGHT
|
||||||
|
Copyright \(co 2002 Free Software Foundation, Inc.
|
||||||
|
.br
|
||||||
|
This is free software; see the source for copying conditions. There is NO
|
||||||
|
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
.SH 関連項目
|
||||||
.B sort
|
.B sort
|
||||||
はソートし結果を書き出す前に、
|
の完全な文書は Texinfo マニュアルとして保守されています。
|
||||||
その入力ファイルを作業ファイルにコピーします。
|
もしあなたのサイトに
|
||||||
.TP
|
.B info
|
||||||
.I "\-t separator"
|
プログラムと
|
||||||
文字
|
|
||||||
.I separator
|
|
||||||
を、各行でソートキーを決める時のフィールド区切りとします。
|
|
||||||
デフォルトでは、空白でない文字と空白文字の間でフィールドを区切ります。
|
|
||||||
例えば、` foo bar' という行は、` foo' と ` bar' という 2 つの
|
|
||||||
フィールドに分けられます。
|
|
||||||
すなわち、入力行 ` foo bar' が与えられた場合、
|
|
||||||
.B sort
|
.B sort
|
||||||
は、この行をフィールド ` foo' と ` bar' に分割します。
|
プログラムが正しくインストールされていれば、コマンド
|
||||||
フィールド区切りの文字は、その前のフィールドの一部と見なされず、また、
|
.IP
|
||||||
その後のフィールドの一部とも見なされません。
|
.B info sort
|
||||||
.TP
|
|
||||||
.I \-u
|
|
||||||
デフォルトの場合、および
|
|
||||||
.I \-m
|
|
||||||
オプションが指定された場合、比較して等しいとされた行のうち
|
|
||||||
最初の 1 行だけ出力し、後は出力しないようにします。
|
|
||||||
.I \-c
|
|
||||||
オプションが指定された場合は、
|
|
||||||
同じ内容の行が連続しないことをチェックします。
|
|
||||||
.TP
|
|
||||||
.I "+POS1 [\-POS2]"
|
|
||||||
行の中で、ソートのキーとして使うフィールドを指定します。
|
|
||||||
フィールドは、行の中で、位置 POS1 から始まり
|
|
||||||
位置 POS2 まで (POS2 は含まず) の部分からなります。
|
|
||||||
フィールドの位置と文字の位置は、ともに 0 から数え始めます。
|
|
||||||
.TP
|
|
||||||
.I "\-k POS1[,POS2]"
|
|
||||||
ソートキーを指定するもう 1 つの書式です。
|
|
||||||
フィールドの位置と文字の位置は、ともに 1 から数え始めます。
|
|
||||||
.PP
|
.PP
|
||||||
位置の指定は、\fIf\fP.\fIc\fP の形式を持ちます。
|
で完全なマニュアルを見ることができるはずです。
|
||||||
\fIf\fP はフィールド番号の指定であり、
|
|
||||||
\fIc\fP は、(\fI+pos\fPの場合) フィールドの先頭から数えた先頭文字の番号、
|
|
||||||
あるいは、
|
|
||||||
(\fI\-pos\fPの場合) 直前のフィールドの末尾から数えた先頭文字の番号の
|
|
||||||
指定です。
|
|
||||||
フィールド内の最初の文字を指定する場合には、.\fIc\fP の部分を
|
|
||||||
省略することができます。
|
|
||||||
.I \-b
|
|
||||||
オプションが与えられた場合、フィールド指定の .\fIc\fP の部分は、
|
|
||||||
(\fI+pos\fPの場合) そのフィールド内の最初の非空白文字から、
|
|
||||||
あるいは、
|
|
||||||
(\fI\-pos\fPの場合) 直前のフィールドの後ろの最初の非空白文字から
|
|
||||||
数えた位置の指定になります。
|
|
||||||
.PP
|
|
||||||
引数 \fI+pos\fP や \fI-pos\fP には、オプション文字
|
|
||||||
.I Mbdfinr
|
|
||||||
を後ろに付けることもできます。
|
|
||||||
その場合には、このフィールドにはグローバルな順序づけオプションは
|
|
||||||
適用されません。
|
|
||||||
.I \-b
|
|
||||||
オプションは、\fI+pos\fP と \fI\-pos\fP のそれぞれに独立に
|
|
||||||
指定できますが、グローバルな指定が継承される場合には
|
|
||||||
両方に指定されたように働きます。
|
|
||||||
.I \-n
|
|
||||||
または
|
|
||||||
.I \-M
|
|
||||||
オプションが指定された場合、
|
|
||||||
.I \-b
|
|
||||||
オプションが暗黙のうちに指定されることになりますが、この
|
|
||||||
.I \-b
|
|
||||||
オプションは、キー指定の \fI+pos\fP と \fI\-pos\fP の両方に働きます。
|
|
||||||
キーは複数のフィールドに跨っても構いません。
|
|
||||||
.PP
|
|
||||||
上記に加え、
|
|
||||||
GNU
|
|
||||||
.B sort
|
|
||||||
が引数 1 個だけ付けて起動される時には、以下のオプションが
|
|
||||||
認識されます。
|
|
||||||
.TP
|
|
||||||
.I "\-\-help"
|
|
||||||
標準出力に使い方のメッセージを表示して正常終了します。
|
|
||||||
.TP
|
|
||||||
.I "\-\-version"
|
|
||||||
標準出力にバージョン情報を表示して正常終了します。
|
|
||||||
.SH 互換性
|
|
||||||
.B sort
|
|
||||||
の歴史的な実装 (BSD や System V) とは、いくつかのオプション、特に
|
|
||||||
.IR \-b ,
|
|
||||||
.IR \-f ,
|
|
||||||
.IR \-n 、
|
|
||||||
の解釈が異なります。
|
|
||||||
GNU sort は POSIX の動作に従いますが、その動作は、普通 (必ずではない)
|
|
||||||
System V の動作と似ています。
|
|
||||||
POSIX によれば、
|
|
||||||
.I \-n
|
|
||||||
は
|
|
||||||
.I \-b
|
|
||||||
を暗黙に指定しなくなりました。
|
|
||||||
整合性を取るために、
|
|
||||||
.I \-M
|
|
||||||
も同じように変更されました。
|
|
||||||
この結果、あいまいな場合には、フィールド指定中の文字の位置の意味が
|
|
||||||
影響される場合があるかも知れません。
|
|
||||||
この問題にぶち当たったら、対応策は、明示的に
|
|
||||||
.I \-b
|
|
||||||
を指定することです。
|
|
||||||
.SH バグ
|
|
||||||
.I \-k
|
|
||||||
の有り無しによりフィールド番号の意味が異なるのは混乱の元です。
|
|
||||||
この件についてはすべて POSIX が悪いのです。
|
|
||||||
|
|
Loading…
Reference in a new issue