OSDN Git Service

(split) LDP: Release pages for LDP v3.39.
[linuxjm/LDP_man-pages.git] / release / man3 / fts.3
index 5b0fed2..fb3ed03 100644 (file)
 .\"
 .\" 2007-12-08, mtk, Converted from mdoc to man macros
 .\"
-.\" Japanese Version Copyright (c) 2000 Yuichi SATO
-.\"         all rights reserved.
-.\" Translated Tue Jul 11 19:02:58 JST 2000
-.\"         by Yuichi SATO <sato@complex.eng.hokudai.ac.jp>
+.\"*******************************************************************
 .\"
-.\"WORD:       hierarchy               階層
-.\"WORD:       traverse                たどる
-.\"WORD:       pointer                 ポインタ
-.\"WORD:       restore                 復元する
-.\"WORD:       null-terminated         NULL 終端された
+.\" This file was generated with po4a. Translate the source file.
 .\"
-.TH FTS 3 2007-12-28 "Linux" "Linux Programmer's Manual"
+.\"*******************************************************************
+.TH FTS 3 2007\-12\-28 Linux "Linux Programmer's Manual"
 .SH 名前
-fts, fts_open, fts_read, fts_children, fts_set, fts_close \- \
-ファイル階層をたどる
+fts, fts_open, fts_read, fts_children, fts_set, fts_close \- ファイル階層をたどる
 .SH 書式
 .nf
-.B #include <sys/types.h>
-.B #include <sys/stat.h>
-.B #include <fts.h>
+\fB#include <sys/types.h>\fP
+\fB#include <sys/stat.h>\fP
+\fB#include <fts.h>\fP
 .sp
-.BI "FTS *fts_open(char * const *" path_argv ", int " options ", "
-.BI "              int (*" compar ")(const FTSENT **, const FTSENT **));"
+\fBFTS *fts_open(char * const *\fP\fIpath_argv\fP\fB, int \fP\fIoptions\fP\fB, \fP
+\fB              int (*\fP\fIcompar\fP\fB)(const FTSENT **, const FTSENT **));\fP
 .sp
-.BI "FTSENT *fts_read(FTS *" ftsp );
+\fBFTSENT *fts_read(FTS *\fP\fIftsp\fP\fB);\fP
 .sp
-.BI "FTSENT *fts_children(FTS *" ftsp ", int " options );
+\fBFTSENT *fts_children(FTS *\fP\fIftsp\fP\fB, int \fP\fIoptions\fP\fB);\fP
 .sp
-.BI "int fts_set(FTS *" ftsp ", FTSENT *" f ", int " options );
+\fBint fts_set(FTS *\fP\fIftsp\fP\fB, FTSENT *\fP\fIf\fP\fB, int \fP\fIoptions\fP\fB);\fP
 .sp
-.BI "int fts_close(FTS *" ftsp );
+\fBint fts_close(FTS *\fP\fIftsp\fP\fB);\fP
 .fi
 .SH 説明
-fts 関数群は、ファイル階層をたどるために提供されている。
-簡単に概略すると次のようになる。
-.BR fts_open ()
-関数は、他の fts 関数群に渡すための、ファイル階層の「ハンドル」を返す。
-.BR fts_read ()
-関数は、ファイル階層中にある 1 つのファイルを記述する構造体へのポインタを返す。
-.BR fts_children ()
-関数は、階層中のディレクトリにあるファイルを記述する構造体の
-リンクリストへのポインタを返す。
-一般にディレクトリは、
-preorder (正方向:下の階層のディレクトリをたどる前) と
-postorder (逆方向:下の階層のディレクトリをすべてたどった後) という、
-異なる方向で 2 回たどられる。ファイルは 1 回たどられる。
-ディレクトリ階層を「論理的に」(シンボリックリングを無視して) 移動することも、
-物理的に (シンボリックリンクをたどって) 移動することも可能である。
-また、階層中の移動の道筋を指示すること・
-余分なものを取り除くこと・階層の一部を再びたどることが可能である。
+fts 関数群は、ファイル階層をたどるために提供されている。 簡単に概略すると次のようになる。 \fBfts_open\fP()  関数は、他の fts
+関数群に渡すための、ファイル階層の「ハンドル」を返す。 \fBfts_read\fP()  関数は、ファイル階層中にある 1
+つのファイルを記述する構造体へのポインタを返す。 \fBfts_children\fP()  関数は、階層中のディレクトリにあるファイルを記述する構造体の
+リンクリストへのポインタを返す。 一般にディレクトリは、 preorder (正方向:下の階層のディレクトリをたどる前) と postorder
+(逆方向:下の階層のディレクトリをすべてたどった後) という、 異なる方向で 2 回たどられる。ファイルは 1 回たどられる。
+ディレクトリ階層を「論理的に」(シンボリックリングを無視して) 移動することも、 物理的に (シンボリックリンクをたどって) 移動することも可能である。
+また、階層中の移動の道筋を指示すること・ 余分なものを取り除くこと・階層の一部を再びたどることが可能である。
 .PP
-2 つの構造体がインクルードファイル
-.I <fts.h>
-で定義されている (さらに typedef されている)。
-1 つ目は、ファイル階層そのものを表現する
-.I FTS
-構造体である。
-2 つ目は、ファイル階層中のファイルを表現する
-.I FTSENT
-構造体である。
-.I FTSENT
-構造体は通常、ファイル階層中のすべてのファイルに対して返される。
-この man ページでは、「ファイル」と
-.RI 「 FTSENT
-構造体」を一般に読み変えることができる。
-.I FTSENT
-構造体は、少なくとも次のようなフィールドを持っており、
-以下でより詳しく説明されている。
+2 つの構造体がインクルードファイル \fI<fts.h>\fP で定義されている (さらに typedef されている)。 1
+つ目は、ファイル階層そのものを表現する \fIFTS\fP 構造体である。 2 つ目は、ファイル階層中のファイルを表現する \fIFTSENT\fP 構造体である。
+\fIFTSENT\fP 構造体は通常、ファイル階層中のすべてのファイルに対して返される。 この man ページでは、「ファイル」と 「\fIFTSENT\fP
+構造体」を一般に読み変えることができる。 \fIFTSENT\fP 構造体は、少なくとも次のようなフィールドを持っており、 以下でより詳しく説明されている。
 .in +4n
 .nf
 
@@ -125,625 +95,260 @@ typedef struct _ftsent {
 .fi
 .in
 .PP
-これらのフィールドは、次のように定義されている。
 .\" .Bl -tag -width "fts_namelen"
-.TP 12
-.IR fts_info
-このフィールドは、返された
-.I FTSENT
-構造体とファイルを説明する以下のフラグのいずれかを表している。
-エラーのないディレクトリ
-.RB ( FTS_D ),
-の場合は例外として、それ以外のすべてのエントリは終端である。
-つまり、エントリは再びたどられることもなく、
-それより下の階層がたどられることもない。
+これらのフィールドは、次のように定義されている。
+.TP  12
+\fIfts_info\fP
 .\" .Bl  -tag -width FTS_DEFAULT
+このフィールドは、返された \fIFTSENT\fP 構造体とファイルを説明する以下のフラグのいずれかを表している。 エラーのないディレクトリ
+(\fBFTS_D\fP), の場合は例外として、それ以外のすべてのエントリは終端である。 つまり、エントリは再びたどられることもなく、
+それより下の階層がたどられることもない。
 .RS 12
-.TP 12
-.BR FTS_D
+.TP  12
+\fBFTS_D\fP
 preorder でたどられるディレクトリ。
-.TP
-.BR FTS_DC
-ツリーの中で循環しているディレクトリ。
-.RI ( FTSENT
-構造体の
-.I fts_cycle
-フィールドも同様に埋められる。)
-.TP
-.BR FTS_DEFAULT
-ファイルタイプを表現する
-.I FTSENT
-構造体が、
-.I fts_info
-の他のいずれかの値で明示的に説明されていない。
-.TP
-.BR FTS_DNR
-読み込みができないディレクトリ。
-これはエラーの場合の返り値であり、
-何がエラーを起こしたかを示すために
-.I fts_errno
+.TP 
+\fBFTS_DC\fP
+ツリーの中で循環しているディレクトリ。 (\fIFTSENT\fP 構造体の \fIfts_cycle\fP フィールドも同様に埋められる。)
+.TP 
+\fBFTS_DEFAULT\fP
+ファイルタイプを表現する \fIFTSENT\fP 構造体が、 \fIfts_info\fP の他のいずれかの値で明示的に説明されていない。
+.TP 
+\fBFTS_DNR\fP
+読み込みができないディレクトリ。 これはエラーの場合の返り値であり、 何がエラーを起こしたかを示すために \fIfts_errno\fP
 フィールドが設定される。
-.TP
-.BR FTS_DOT
-.BR fts_open ()
-へのファイル名として指定されなかった
-"." または ".."
-という名前のファイル
-.RB ( FTS_SEEDOT
+.TP 
+\fBFTS_DOT\fP
+\fBfts_open\fP()  へのファイル名として指定されなかった "." または ".." という名前のファイル (\fBFTS_SEEDOT\fP
 を参照すること)。
-.TP
-.BR FTS_DP
-postorder でたどられるディレクトリ。
-.I FTSENT
-構造体の内容は、preorder のときに返された状態
-(つまり、
-.I fts_info
-フィールドが
-.B FTS_D
-に設定されている状態) から変更されない。
-.TP
-.B FTS_ERR
-これはエラーの場合の返り値であり、
-.I fts_errno
-フィールドは、何がエラーを起こしたかを示す値に設定される。
-.TP
-.B FTS_F
+.TP 
+\fBFTS_DP\fP
+postorder でたどられるディレクトリ。 \fIFTSENT\fP 構造体の内容は、preorder のときに返された状態 (つまり、
+\fIfts_info\fP フィールドが \fBFTS_D\fP に設定されている状態) から変更されない。
+.TP 
+\fBFTS_ERR\fP
+これはエラーの場合の返り値であり、 \fIfts_errno\fP フィールドは、何がエラーを起こしたかを示す値に設定される。
+.TP 
+\fBFTS_F\fP
 通常のファイル。
-.TP
-.B FTS_NS
-.BR stat (2)
-情報が得られなかったファイル。
-.I fts_statp
-フィールドの内容は定義されない。
-これはエラーの場合の返り値であり、
-.I fts_errno
-フィールドは、何がエラーを起こしたかを示す値に設定される。
-.TP
-.B FTS_NSOK
-.BR stat (2)
-情報が要求されなかったファイル。
-.I fts_statp
-フィールドの内容は定義されない。
-.TP
-.B FTS_SL
+.TP 
+\fBFTS_NS\fP
+\fBstat\fP(2)  情報が得られなかったファイル。 \fIfts_statp\fP フィールドの内容は定義されない。 これはエラーの場合の返り値であり、
+\fIfts_errno\fP フィールドは、何がエラーを起こしたかを示す値に設定される。
+.TP 
+\fBFTS_NSOK\fP
+\fBstat\fP(2)  情報が要求されなかったファイル。 \fIfts_statp\fP フィールドの内容は定義されない。
+.TP 
+\fBFTS_SL\fP
 シンボリックリンク。
-.TP
-.B FTS_SLNONE
-リンク先の存在しないシンボリックリンク。
-.I fts_statp
-フィールドの内容は、シンボリックリンクそのもののファイル特性情報を参照する。
+.TP 
+\fBFTS_SLNONE\fP
 .\" .El
+リンク先の存在しないシンボリックリンク。 \fIfts_statp\fP フィールドの内容は、シンボリックリンクそのもののファイル特性情報を参照する。
 .RE
-.TP
-.IR fts_accpath
+.TP 
+\fIfts_accpath\fP
 現在のディレクトリからファイルにアクセスするためのパス。
-.TP
-.IR fts_path
-階層をたどるときのルートからみたファイルの相対的なパス。
-このパスには、
-.BR fts_open ()
-に指定したパスがプレフィックスとして含まれる。
-.TP
-.IR fts_pathlen
-.I fts_path
-で参照される文字列の長さ。
-.TP
-.IR fts_name
+.TP 
+\fIfts_path\fP
+階層をたどるときのルートからみたファイルの相対的なパス。 このパスには、 \fBfts_open\fP()  に指定したパスがプレフィックスとして含まれる。
+.TP 
+\fIfts_pathlen\fP
+\fIfts_path\fP で参照される文字列の長さ。
+.TP 
+\fIfts_name\fP
 ファイルの名前。
-.TP
-.IR fts_namelen
-.I fts_name
-で参照される文字列の長さ。
-.TP
-.IR fts_level
-階層をたどって、このファイルがみつかった深さ。
-\-1 〜 N の数値で表される。
-階層をたどるときの出発点 (ルート) の親ディレクトリを表す
-.I FTSENT
-構造体では \-1 となる。
-また、ルート自身の
-.I FTSENT
-構造体では 0 になる。
-.TP
-.IR fts_errno
-関数
-.BR fts_children ()
-と
-.BR fts_read ()
-から返される
-.I FTSENT
-構造体の
-.I fts_info
-フィールドが
-.BR FTS_DNR ,
-.BR FTS_ERR ,
-.B FTS_NS
-に設定されている場合、
-.I fts_errno
-フィールドにはエラーの原因を示す外部変数
-.I errno
-の値が入る。
-それ以外の場合、
-.I fts_errno
-フィールドの内容は定義されない。
-.TP
-.IR fts_number
-このフィールドは、アプリケーションプログラムから使用するために提供され、
-fts 関数群では変更されない。
-このフィールドは 0 で初期化される。
-.TP
-.IR fts_pointer
-このフィールドは、アプリケーションプログラムから使用するために提供され、
-fts 関数群では変更されない。
-このフィールドは
-.B NULL
+.TP 
+\fIfts_namelen\fP
+\fIfts_name\fP で参照される文字列の長さ。
+.TP 
+\fIfts_level\fP
+階層をたどって、このファイルがみつかった深さ。 \-1 〜 N の数値で表される。 階層をたどるときの出発点 (ルート) の親ディレクトリを表す
+\fIFTSENT\fP 構造体では \-1 となる。 また、ルート自身の \fIFTSENT\fP 構造体では 0 になる。
+.TP 
+\fIfts_errno\fP
+関数 \fBfts_children\fP()  と \fBfts_read\fP()  から返される \fIFTSENT\fP 構造体の \fIfts_info\fP
+フィールドが \fBFTS_DNR\fP, \fBFTS_ERR\fP, \fBFTS_NS\fP に設定されている場合、 \fIfts_errno\fP
+フィールドにはエラーの原因を示す外部変数 \fIerrno\fP の値が入る。 それ以外の場合、 \fIfts_errno\fP フィールドの内容は定義されない。
+.TP 
+\fIfts_number\fP
+このフィールドは、アプリケーションプログラムから使用するために提供され、 fts 関数群では変更されない。 このフィールドは 0 で初期化される。
+.TP 
+\fIfts_pointer\fP
+このフィールドは、アプリケーションプログラムから使用するために提供され、 fts 関数群では変更されない。 このフィールドは \fBNULL\fP
 で初期化される。
-.TP
-.IR fts_parent
-現在のファイルのすぐ上の階層にあるファイル
-(つまり、現在のファイルがメンバーになっているディレクトリ) を参照する
-.I FTSENT
-構造体へのポインタ。
-最初の出発点に対しても、親となる構造体は与えられる。
-しかし、
-.IR fts_level ,
-.IR fts_number ,
-.I fts_pointer
-フィールドのみの初期化しか保証されない。
-.TP
-.IR fts_link
-.BR fts_children ()
-から返される場合、
-.I fts_link
-フィールドはディレクトリメンバーの NUL 終端されたリンクリストの形式で、
-次の構造体を指し示す。
-それ以外の場合、
-.I fts_link
+.TP 
+\fIfts_parent\fP
+現在のファイルのすぐ上の階層にあるファイル (つまり、現在のファイルがメンバーになっているディレクトリ) を参照する \fIFTSENT\fP
+構造体へのポインタ。 最初の出発点に対しても、親となる構造体は与えられる。 しかし、 \fIfts_level\fP, \fIfts_number\fP,
+\fIfts_pointer\fP フィールドのみの初期化しか保証されない。
+.TP 
+\fIfts_link\fP
+\fBfts_children\fP()  から返される場合、 \fIfts_link\fP フィールドはディレクトリメンバーの NUL
+終端されたリンクリストの形式で、 次の構造体を指し示す。 それ以外の場合、 \fIfts_link\fP フィールドは定義されない。
+.TP 
+\fIfts_cycle\fP
+2 つのディレクトリにハードリンクが張られているため、 または、シンボリックリンクがあるディレクトリを指しているために、
+ディレクトリが循環する階層構造を作っている場合 (\fBFTS_DC\fP を参照)、 構造体の \fIfts_cycle\fP フィールドは、階層中で現在の
+\fIFTSENT\fP 構造体と同じファイルを参照している \fIFTSENT\fP 構造体を指し示す。 それ以外の場合、 \fIfts_cycle\fP
 フィールドは定義されない。
-.TP
-.IR fts_cycle
-2 つのディレクトリにハードリンクが張られているため、
-または、シンボリックリンクがあるディレクトリを指しているために、
-ディレクトリが循環する階層構造を作っている場合
-.RB ( FTS_DC
-を参照)、
-構造体の
-.I fts_cycle
-フィールドは、階層中で現在の
-.I FTSENT
-構造体と同じファイルを参照している
-.I FTSENT
-構造体を指し示す。
-それ以外の場合、
-.I fts_cycle
-フィールドは定義されない。
-.TP
-.IR fts_statp
-このファイルの
-.BR stat (2)
-情報へのポインタ。
+.TP 
+\fIfts_statp\fP
 .\" .El
+このファイルの \fBstat\fP(2)  情報へのポインタ。
 .PP
-ファイル階層中のすべてのファイルのパスに対して、
-ただ 1 つのバッファーが使われる。
-したがって、
-.I fts_path
-と
-.I fts_accpath
-フィールドは、
-.BR fts_read ()
-によって返された最も新しいファイルに対して「のみ」
-NULL 終端されることが保証される。
-これらのフィールドを、他の
-.I FTSENT
-構造体で表現されるファイルを参照するために使うには、
-.I FTSENT
-構造体の
-.I fts_pathlen
-フィールドにある情報を使ってパスのバッファーを修正する必要がある。
-これらの修正は、さらに
-.BR fts_read ()
-を呼び出そうとする場合には、元に戻しておかなければならない。
-.I fts_name
-フィールドは、常に
-.B NUL
+ファイル階層中のすべてのファイルのパスに対して、 ただ 1 つのバッファーが使われる。 したがって、 \fIfts_path\fP と
+\fIfts_accpath\fP フィールドは、 \fBfts_read\fP()  によって返された最も新しいファイルに対して「のみ」 NULL
+終端されることが保証される。 これらのフィールドを、他の \fIFTSENT\fP 構造体で表現されるファイルを参照するために使うには、 \fIFTSENT\fP
+構造体の \fIfts_pathlen\fP フィールドにある情報を使ってパスのバッファーを修正する必要がある。 これらの修正は、さらに
+\fBfts_read\fP()  を呼び出そうとする場合には、元に戻しておかなければならない。 \fIfts_name\fP フィールドは、常に \fBNUL\fP
 終端される。
 .SS fts_open()
-.BR fts_open ()
-関数は、文字列ポインタの配列へのポインタを引き数に取る。
-この文字列ポインタは、論理ファイル階層をつくる 1 つ以上のパスの名前になる。
-配列は、
-.B NULL
-ポインタで終端されなければならない。
+\fBfts_open\fP()  関数は、文字列ポインタの配列へのポインタを引き数に取る。 この文字列ポインタは、論理ファイル階層をつくる 1
+つ以上のパスの名前になる。 配列は、 \fBNULL\fP ポインタで終端されなければならない。
 .PP
-多くのオプションがあり、少なくとも 1 つ
-.RB ( FTS_LOGICAL
-または
-.BR FTS_PHYSICAL )
-が指定されなければならない。
-オプションは以下の値の論理和をとって選択する。
 .\" .Bl -tag -width "FTS_PHYSICAL"
-.TP
-.B FTS_COMFOLLOW
-このオプションは、
-.B FTS_LOGICAL
-の指定にかかわらず、
-ルートパスに指定されたシンボリックリンクをすぐにたどらせる。
-.TP
-.B FTS_LOGICAL
-このオプションは、
-fts ルーチンにシンボリックリンクそのものではなく、
-シンボリックリンクが指しているファイルの
-.I FTSENT
-構造体を返させる。
-このオプションが設定された場合、
-.I FTSENT
-構造体がアプリケーションに返されるような
-シンボリックリンクのみが、存在しないファイルを参照している。
-.B FTS_LOGICAL
-または
-.B FTS_PHYSICAL
-のどちらかを、
-.BR fts_open ()
-関数に与えなければ「ならない」。
-.TP
-.B FTS_NOCHDIR
-パフォーマンスの最適化のため、
-fts 関数群はファイル階層をたどるときディレクトリを変える。
-これには、階層をたどっている間は
-アプリケーションがある特定のディレクトリにいるということに
-依存できない、という副作用がある。
-.B FTS_NOCHDIR
-オプションで最適化を無効にすると、
-fts 関数群は現在のディレクトリを変更しない。
-.B FTS_NOCHDIR
-が指定され、かつ
-.BR fts_open ()
-の引き数として絶対パス名が与えられたとき以外、アプリケーションは、
-自らカレントディレクトリを変更したり、
+多くのオプションがあり、少なくとも 1 つ (\fBFTS_LOGICAL\fP または \fBFTS_PHYSICAL\fP)  が指定されなければならない。
+オプションは以下の値の論理和をとって選択する。
+.TP  13
+\fBFTS_COMFOLLOW\fP
+このオプションは、 \fBFTS_LOGICAL\fP の指定にかかわらず、 ルートパスに指定されたシンボリックリンクをすぐにたどらせる。
+.TP 
+\fBFTS_LOGICAL\fP
+このオプションは、 fts ルーチンにシンボリックリンクそのものではなく、 シンボリックリンクが指しているファイルの \fIFTSENT\fP
+構造体を返させる。 このオプションが設定された場合、 \fIFTSENT\fP 構造体がアプリケーションに返されるような
+シンボリックリンクのみが、存在しないファイルを参照している。 \fBFTS_LOGICAL\fP または \fBFTS_PHYSICAL\fP のどちらかを、
+\fBfts_open\fP()  関数に与えなければ「ならない」。
+.TP 
+\fBFTS_NOCHDIR\fP
+パフォーマンスの最適化のため、 fts 関数群はファイル階層をたどるときディレクトリを変える。 これには、階層をたどっている間は
+アプリケーションがある特定のディレクトリにいるということに 依存できない、という副作用がある。 \fBFTS_NOCHDIR\fP
+オプションで最適化を無効にすると、 fts 関数群は現在のディレクトリを変更しない。 \fBFTS_NOCHDIR\fP が指定され、かつ
+\fBfts_open\fP()  の引き数として絶対パス名が与えられたとき以外、アプリケーションは、 自らカレントディレクトリを変更したり、
 ファイルにアクセスしたりすべきではない、という点に注意すること。
-.TP
-.B FTS_NOSTAT
-デフォルトでは、返された
-.I FTSENT
-構造体は、たどられた各ファイルについてのファイル特徴情報
-.I ( statp
-フィールド) を参照する。
-このオプションは、
-fts 関数群が
-.I fts_info
-フィールドを
-.B FTS_NSOK
-に設定し
-.I statp
-の内容を定義されないままにすることを許すことにより、
-パフォーマンスの最適化に必要なものを緩和する。
-.TP
-.B FTS_PHYSICAL
-このオプションは、
-fts ルーチンにシンボリックリンクが指しているファイルではなく、
-シンボリックリンク自身の
-.I FTSENT
-構造体を返させる。
-このオプションが設定されると、階層中のすべてのシンボリックリンクの
-.I FTSENT
-構造体がアプリケーションに返される。
-.B FTS_LOGICAL
-または
-.B FTS_PHYSICAL
-のどちらかを
-.BR fts_open ()
-関数に与えなければ「ならない」。
-.TP
-.B FTS_SEEDOT
-デフォルトでは、
-.BR fts_open ()
-のパス引き数として指定されない限り、ファイル階層中にある
-"." または ".." という名前のファイルは無視される。
-このオプションは、
-fts ルーチンにこれらのファイルの
-.I FTSENT
-構造体を返させる。
-.TP
-.B FTS_XDEV
-このオプションは、
-fts が下り始めのファイルとは異なるデバイス番号を持っている
-ディレクトリに下りるのを阻止する。
+.TP 
+\fBFTS_NOSTAT\fP
+デフォルトでは、返された \fIFTSENT\fP 構造体は、たどられた各ファイルについてのファイル特徴情報 \fI( statp\fP フィールド) を参照する。
+このオプションは、 fts 関数群が \fIfts_info\fP フィールドを \fBFTS_NSOK\fP に設定し \fIstatp\fP
+の内容を定義されないままにすることを許すことにより、 パフォーマンスの最適化に必要なものを緩和する。
+.TP 
+\fBFTS_PHYSICAL\fP
+このオプションは、 fts ルーチンにシンボリックリンクが指しているファイルではなく、 シンボリックリンク自身の \fIFTSENT\fP 構造体を返させる。
+このオプションが設定されると、階層中のすべてのシンボリックリンクの \fIFTSENT\fP 構造体がアプリケーションに返される。
+\fBFTS_LOGICAL\fP または \fBFTS_PHYSICAL\fP のどちらかを \fBfts_open\fP()  関数に与えなければ「ならない」。
+.TP 
+\fBFTS_SEEDOT\fP
+デフォルトでは、 \fBfts_open\fP()  のパス引き数として指定されない限り、ファイル階層中にある "." または ".."
+という名前のファイルは無視される。 このオプションは、 fts ルーチンにこれらのファイルの \fIFTSENT\fP 構造体を返させる。
+.TP 
+\fBFTS_XDEV\fP
 .\" .El
+このオプションは、 fts が下り始めのファイルとは異なるデバイス番号を持っている ディレクトリに下りるのを阻止する。
 .PP
-引き数
-.BR compar ()
-は、階層をたどる順番を決めるのに使われるユーザー定義関数を指定する。
-この関数は、引き数として
-.I FTSENT
-構造体のポインタのポインタを 2 つとり、
-1 番目の引き数で参照されているファイルが
-2 番目の引き数で参照されているファイルより
-前にある場合は負の値・同じ場合はゼロ・後にある場合は正の値を
-返さなければならない。
-.I FTSENT
-構造体の
-.IR fts_accpath ,
-.IR fts_path ,
-.I fts_pathlen
-フィールドは、この比較に「絶対」使ってはいけない。
-.I fts_info
-フィールドが
-.B FTS_NS
-または
-.B FTS_NSOK
-に設定される場合、
-.I fts_statp
-フィールドはこれらのどちらでもない。
-.BR compar ()
-引き数が
-.B NULL
-の場合、ディレクトリをたどる順番は、ルートパスについては
-.I path_argv
-のなかでリストされた順番で、
-その他のファイルについてはディレクトリ内でリストされた順番となる。
+引き数 \fBcompar\fP()  は、階層をたどる順番を決めるのに使われるユーザー定義関数を指定する。 この関数は、引き数として \fIFTSENT\fP
+構造体のポインタのポインタを 2 つとり、 1 番目の引き数で参照されているファイルが 2 番目の引き数で参照されているファイルより
+前にある場合は負の値・同じ場合はゼロ・後にある場合は正の値を 返さなければならない。 \fIFTSENT\fP 構造体の \fIfts_accpath\fP,
+\fIfts_path\fP, \fIfts_pathlen\fP フィールドは、この比較に「絶対」使ってはいけない。 \fIfts_info\fP フィールドが
+\fBFTS_NS\fP または \fBFTS_NSOK\fP に設定される場合、 \fIfts_statp\fP フィールドはこれらのどちらでもない。
+\fBcompar\fP()  引き数が \fBNULL\fP の場合、ディレクトリをたどる順番は、ルートパスについては \fIpath_argv\fP
+のなかでリストされた順番で、 その他のファイルについてはディレクトリ内でリストされた順番となる。
 .SS fts_read()
-.BR fts_read ()
-関数は、階層中のファイルを記述する
-.I FTSENT
-構造体へのポインタを返す。
-(読み込み可能で、循環していない) ディレクトリは、
-1 回は preorder で、もう 1 回は postorder で、少なくとも 2 回たどられる。
-他のファイルは、少なくとも 1 回たどられる。
-(ディレクトリ間のハードリンクによって
-循環やシンボリックリンクへのシンボリックリンクが起こらない場合、
-ファイルは 2 回以上、ディレクトリは 3 回以上たどられる。)
+\fBfts_read\fP()  関数は、階層中のファイルを記述する \fIFTSENT\fP 構造体へのポインタを返す。 (読み込み可能で、循環していない)
+ディレクトリは、 1 回は preorder で、もう 1 回は postorder で、少なくとも 2 回たどられる。 他のファイルは、少なくとも 1
+回たどられる。 (ディレクトリ間のハードリンクによって 循環やシンボリックリンクへのシンボリックリンクが起こらない場合、 ファイルは 2
+回以上、ディレクトリは 3 回以上たどられる。)
 .PP
-階層中のすべてのメンバーが返された場合、
-.BR fts_read ()
-は
-.B NULL
-を返し、外部変数
-.I errno
-を 0 にする。
-階層中のファイルに関係しないエラーが起こった場合、
-.BR fts_read ()
-は
-.B NULL
-を返し、
-.I errno
-をエラーに対応した値にする。
-階層中のファイルに関係したエラーが起こった場合、
-.I FTSENT
-構造体へのポインタが返され、
-.I errno
-は設定される場合と設定されない場合がある
-.RI ( fts_info
-を参照すること)。
+階層中のすべてのメンバーが返された場合、 \fBfts_read\fP()  は \fBNULL\fP を返し、外部変数 \fIerrno\fP を 0 にする。
+階層中のファイルに関係しないエラーが起こった場合、 \fBfts_read\fP()  は \fBNULL\fP を返し、 \fIerrno\fP
+をエラーに対応した値にする。 階層中のファイルに関係したエラーが起こった場合、 \fIFTSENT\fP 構造体へのポインタが返され、 \fIerrno\fP
+は設定される場合と設定されない場合がある (\fIfts_info\fP を参照すること)。
 .PP
-.BR fts_read ()
-によって返される
-.I FTSENT
-構造体は、同じファイル階層ストリームへの
-.BR fts_close ()
-の呼出しの後に上書きされる。
-また、同じファイル階層ストリームへの
-.BR fts_read ()
-の呼出しの後でも、構造体がディレクトリを表現していない限り上書きされる。
-この場合、
-.BR fts_read ()
-関数によって postorder で
-.I FTSENT
-構造体が返された後、
-.BR fts_read ()
-の呼出しがあるまで、
-これらの構造体は上書きされない。
+\fBfts_read\fP()  によって返される \fIFTSENT\fP 構造体は、同じファイル階層ストリームへの \fBfts_close\fP()
+の呼出しの後に上書きされる。 また、同じファイル階層ストリームへの \fBfts_read\fP()
+の呼出しの後でも、構造体がディレクトリを表現していない限り上書きされる。 この場合、 \fBfts_read\fP()  関数によって postorder で
+\fIFTSENT\fP 構造体が返された後、 \fBfts_read\fP()  の呼出しがあるまで、 これらの構造体は上書きされない。
 .SS fts_children()
-.BR fts_children ()
-関数は、
-.I FTSENT
-構造体へのポインタを返す。
-この構造体は、(
-.BR fts_read ()
-で最も新しく返された
-.I FTSENT
-構造体で表現されるディレクトリにあるファイルの)
-NUL 終端されたリンクリストの最初のエントリを記述する。
-このリストは、
-.I FTSENT
-構造体の
-.I fts_link
-フィールドを使ってリンクされ、
-ユーザー指定の比較関数がある場合は、それで順序づけられる。
-.BR fts_children ()
-の呼出しを繰り返すことで、
+\fBfts_children\fP()  関数は、 \fIFTSENT\fP 構造体へのポインタを返す。 この構造体は、( \fBfts_read\fP()
+で最も新しく返された \fIFTSENT\fP 構造体で表現されるディレクトリにあるファイルの)  NUL 終端されたリンクリストの最初のエントリを記述する。
+このリストは、 \fIFTSENT\fP 構造体の \fIfts_link\fP フィールドを使ってリンクされ、
+ユーザー指定の比較関数がある場合は、それで順序づけられる。 \fBfts_children\fP()  の呼出しを繰り返すことで、
 このリンクリストは再生成される。
 .PP
-特別な場合として、
-.BR fts_read ()
-がファイル階層について呼ばれていない場合、
-.BR fts_children ()
-は
-.BR fts_open ()
-に指定された論理ディレクトリ (つまり、
-.BR fts_open ()
-に指定された引き数) の中にあるファイルへのポインタを返す。
-それ以外の場合で、
-.BR fts_read ()
-によって最も新しく返された
-.I FTSENT
-構造体が preorder でたどられたディレクトリでない場合や
-何も含んでいないディレクトリの場合は、
-.BR fts_children ()
-は
-.B NULL
-を返し、
-.I errno
-を 0 にする。
-エラーが起こった場合、
-.BR fts_children ()
-は
-.B NULL
-を返し、
-.I errno
-をエラーに対応した値にする。
+特別な場合として、 \fBfts_read\fP()  がファイル階層について呼ばれていない場合、 \fBfts_children\fP()  は
+\fBfts_open\fP()  に指定された論理ディレクトリ (つまり、 \fBfts_open\fP()  に指定された引き数)
+の中にあるファイルへのポインタを返す。 それ以外の場合で、 \fBfts_read\fP()  によって最も新しく返された \fIFTSENT\fP 構造体が
+preorder でたどられたディレクトリでない場合や 何も含んでいないディレクトリの場合は、 \fBfts_children\fP()  は \fBNULL\fP
+を返し、 \fIerrno\fP を 0 にする。 エラーが起こった場合、 \fBfts_children\fP()  は \fBNULL\fP を返し、
+\fIerrno\fP をエラーに対応した値にする。
 .PP
-.BR fts_children ()
-によって返される
-.I FTSENT
-構造体は、同じファイル階層ストリームへの
-.BR fts_children (),
-.BR fts_close (),
-.BR fts_read ()
-の呼出しの後に上書きされる場合がある。
+\fBfts_children\fP()  によって返される \fIFTSENT\fP 構造体は、同じファイル階層ストリームへの
+\fBfts_children\fP(), \fBfts_close\fP(), \fBfts_read\fP()  の呼出しの後に上書きされる場合がある。
 .PP
-.I option
-は、次の値に設定できる。
 .\" .Bl -tag -width FTS_NAMEONLY
-.TP
-.B FTS_NAMEONLY
-ファイル名のみが必要とされている。
-返された構造体のリンクリストの
-.IR fts_name ,
-.I fts_namelen
-フィールド以外の
-すべてのフィールドの内容は定義されない。
+\fIoption\fP は、次の値に設定できる。
+.TP  13
+\fBFTS_NAMEONLY\fP
 .\" .El
+ファイル名のみが必要とされている。 返された構造体のリンクリストの \fIfts_name\fP, \fIfts_namelen\fP フィールド以外の
+すべてのフィールドの内容は定義されない。
 .SS fts_set()
-関数
-.BR fts_set ()
-は、ユーザーアプリケーションが
-ストリーム
-.I ftsp
-のファイル
-.I f
-について更なる処理を決定すること許す。
-.BR fts_set ()
-関数は、成功した場合は 0 を、エラーが起こった場合は \-1 を返す。
-.I option
-は、次の値のいずれか 1 つに設定されなければならない。
 .\" .Bl -tag -width FTS_PHYSICAL
-.TP
-.B FTS_AGAIN
-ファイルを再びたどる。すべてのファイルタイプが再びたどられる。
-次の
-.BR fts_read ()
-の呼出しにより、参照されているファイルが返される。
-構造体の
-.IR fts_stat ,
-.I fts_info
-フィールドはこの時に初期化されるが、他のフィールドは変更されない。
-このオプションは、
-.BR fts_read ()
-によって最も新しく返されたファイルについてのみ意味を持つ。
-通常は、postorder でディレクトリをたどる場合に使用し、
-その下の階層と同様に、
-ディレクトリを (preorder と postorder の両方で) 再びたどらせる。
-.TP
-.B FTS_FOLLOW
-
-参照されてるファイルは、シンボリックリンクでなければならない。
-参照されているファイルが
-.BR fts_read ()
-によって最も新しく返されたものである場合、次の
-.BR fts_read ()
-の呼出しでは、シンボリックリンクそのものではなく、
-シンボリックリンクが指している先を反映するように
-.IR fts_info ,
-.I fts_statp
-を再び初期化したファイルが返される。
-ファイルが
-.BR fts_children ()
-によって最も新しく返されたものの 1 つである場合、
-.BR fts_read ()
-によって返されたとき、構造体の
-.IR fts_info ,
-.I fts_statp
-フィールドは、シンボリックリンクそのものではなく、
-シンボリックリンクが指している先を反映する。
-どちらの場合でも、シンボリックリンクが指している先がないときは、
-返された構造体のフィールドは変更されず、
-.I fts_info
-フィールドが
-.B FTS_SLNONE
-に設定される。
-.PP
-リンク先がディレクトリの場合、
-ファイルが preorder で返された後、下の階層のすべてファイルが返され、
-その後で postorder で返される。
-.TP
-.B FTS_SKIP
-このファイルの下の階層はたどられない。
-このファイルは、
-.BR fts_children ()
-または
-.BR fts_read ()
-のどちらかによって最も新しく返されたものの 1 つである。
+関数 \fBfts_set\fP()  は、ユーザーアプリケーションが ストリーム \fIftsp\fP のファイル \fIf\fP
+について更なる処理を決定すること許す。 \fBfts_set\fP()  関数は、成功した場合は 0 を、エラーが起こった場合は \-1 を返す。
+\fIoption\fP は、次の値のいずれか 1 つに設定されなければならない。
+.TP  13
+\fBFTS_AGAIN\fP
+ファイルを再びたどる。すべてのファイルタイプが再びたどられる。 次の \fBfts_read\fP()  の呼出しにより、参照されているファイルが返される。
+構造体の \fIfts_stat\fP, \fIfts_info\fP フィールドはこの時に初期化されるが、他のフィールドは変更されない。 このオプションは、
+\fBfts_read\fP()  によって最も新しく返されたファイルについてのみ意味を持つ。 通常は、postorder
+でディレクトリをたどる場合に使用し、 その下の階層と同様に、 ディレクトリを (preorder と postorder の両方で) 再びたどらせる。
+.TP 
+\fBFTS_FOLLOW\fP
+参照されてるファイルは、シンボリックリンクでなければならない。 参照されているファイルが \fBfts_read\fP()
+によって最も新しく返されたものである場合、次の \fBfts_read\fP()  の呼出しでは、シンボリックリンクそのものではなく、
+シンボリックリンクが指している先を反映するように \fIfts_info\fP, \fIfts_statp\fP を再び初期化したファイルが返される。 ファイルが
+\fBfts_children\fP()  によって最も新しく返されたものの 1 つである場合、 \fBfts_read\fP()  によって返されたとき、構造体の
+\fIfts_info\fP, \fIfts_statp\fP フィールドは、シンボリックリンクそのものではなく、 シンボリックリンクが指している先を反映する。
+どちらの場合でも、シンボリックリンクが指している先がないときは、 返された構造体のフィールドは変更されず、 \fIfts_info\fP フィールドが
+\fBFTS_SLNONE\fP に設定される。
+.IP
+リンク先がディレクトリの場合、 ファイルが preorder で返された後、下の階層のすべてファイルが返され、 その後で postorder
+で返される。
+.TP 
+\fBFTS_SKIP\fP
 .\" .El
+このファイルの下の階層はたどられない。 このファイルは、 \fBfts_children\fP()  または \fBfts_read\fP()
+のどちらかによって最も新しく返されたものの 1 つである。
 .SS fts_close()
-.BR fts_close ()
-関数は、ファイル階層ストリーム
-.I ftsp
-を閉じる。そして、現在のディレクトリを
-.I ftsp
-を開くために
-.BR fts_open ()
-が呼ばれたディレクトリに復元する。
-.BR fts_close ()
-関数は、成功した場合は 0 を、エラーが起こった場合は \-1 を返す。
-.SS エラー
-関数
-.BR fts_open ()
-が失敗した場合、
-.I errno
-は、ライブラリ関数
-.BR open (2)
-と
-.BR malloc (3)
+\fBfts_close\fP()  関数は、ファイル階層ストリーム \fIftsp\fP を閉じる。そして、現在のディレクトリを \fIftsp\fP を開くために
+\fBfts_open\fP()  が呼ばれたディレクトリに復元する。 \fBfts_close\fP()  関数は、成功した場合は 0 を、エラーが起こった場合は
+\-1 を返す。
+.SH エラー
+関数 \fBfts_open\fP()  が失敗した場合、 \fIerrno\fP は、ライブラリ関数 \fBopen\fP(2)  と \fBmalloc\fP(3)
 に対して指定されるエラーに設定される。
 .PP
-関数
-.BR fts_close ()
-が失敗した場合、
-.I errno
-は、ライブラリ関数
-.BR chdir (2)
-と
-.BR close (2)
+関数 \fBfts_close\fP()  が失敗した場合、 \fIerrno\fP は、ライブラリ関数 \fBchdir\fP(2)  と \fBclose\fP(2)
 に対して指定されるエラーに設定される。
 .PP
-関数
-.BR fts_read ()
-と
-.BR fts_children ()
-が失敗した場合、
-.I errno
-は、ライブラリ関数
-.BR chdir (2),
-.BR malloc (3),
-.BR opendir (3),
-.BR readdir (3),
-.BR stat (2)
+関数 \fBfts_read\fP()  と \fBfts_children\fP()  が失敗した場合、 \fIerrno\fP は、ライブラリ関数
+\fBchdir\fP(2), \fBmalloc\fP(3), \fBopendir\fP(3), \fBreaddir\fP(3), \fBstat\fP(2)
 に対して指定されるエラーに設定される。
 .PP
-更に、
-.BR fts_children (),
-.BR fts_open (),
-.BR fts_set ()
-が失敗した場合、
-.I errno
+更に、 \fBfts_children\fP(), \fBfts_open\fP(), \fBfts_set\fP()  が失敗した場合、 \fIerrno\fP
 が次の値にされる。
-.TP
-.B EINVAL
+.TP 
+\fBEINVAL\fP
 オプションが無効であった。
 .SH バージョン
 これらの関数は、Linux では glibc2 から使用可能である。
 .SH 準拠
-4.4BSD.
 .\" The following statement is years old, and seems no closer to
 .\" being true -- mtk
+.\" The
 .\" .I fts
-.\" ユーティリティは、将来の
+.\" utility is expected to be included in a future
 .\" POSIX.1
-.\" リビジョンに含まれると期待されている。
+.\" revision.
+4.4BSD.
 .SH 関連項目
-.BR find (1),
-.BR chdir (2),
-.BR stat (2),
-.BR ftw (3),
-.BR qsort (3)
+\fBfind\fP(1), \fBchdir\fP(2), \fBstat\fP(2), \fBftw\fP(3), \fBqsort\fP(3)