.\" Copyright (c) 1989, 1991, 1993, 1994
.\" The Regents of the University of California. All rights reserved.
.\"
+.\" %%%LICENSE_START(BSD_4_CLAUSE_UCB)
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
+.\" %%%LICENSE_END
.\"
.\" @(#)fts.3 8.5 (Berkeley) 4/16/94
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH FTS 3 2007\-12\-28 Linux "Linux Programmer's Manual"
+.\"
+.\" 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>
+.\"
+.TH FTS 3 2014\-03\-18 Linux "Linux Programmer's Manual"
.SH 名前
fts, fts_open, fts_read, fts_children, fts_set, fts_close \- ファイル階層をたどる
.SH 書式
つのファイルを記述する構造体へのポインタを返す。 \fBfts_children\fP() 関数は、階層中のディレクトリにあるファイルを記述する構造体の
リンクリストへのポインタを返す。 一般にディレクトリは、 preorder (正方向:下の階層のディレクトリをたどる前) と postorder
(逆方向:下の階層のディレクトリをすべてたどった後) という、 異なる方向で 2 回たどられる。ファイルは 1 回たどられる。
-ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªé\9a\8e層ã\82\92ã\80\8cè«\96ç\90\86ç\9a\84ã\81«ã\80\8d(ã\82·ã\83³ã\83\9cã\83ªã\83\83ã\82¯ã\83ªã\83³ã\82°ã\82\92ç\84¡è¦\96ã\81\97ã\81¦) 移å\8b\95ã\81\99ã\82\8bã\81\93ã\81¨ã\82\82ã\80\81 ç\89©ç\90\86ç\9a\84ã\81« (ã\82·ã\83³ã\83\9cã\83ªã\83\83ã\82¯ã\83ªã\83³ã\82¯ã\82\92ã\81\9fã\81©ã\81£ã\81¦) 移å\8b\95ã\81\99ã\82\8bã\81\93ã\81¨ã\82\82å\8f¯è\83½ã\81§ã\81\82ã\82\8bã\80\82
-また、階層中の移動の道筋を指示すること・ 余分なものを取り除くこと・階層の一部を再びたどることが可能である。
+ã\83\87ã\82£ã\83¬ã\82¯ã\83\88ã\83ªé\9a\8e層ã\82\92ã\80\8cè«\96ç\90\86ç\9a\84ã\81«ã\80\8d(ã\82·ã\83³ã\83\9cã\83ªã\83\83ã\82¯ã\83ªã\83³ã\82°ã\81\8cæ\8c\87ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\82\92è¦\8bã\81¦) 辿ã\82\8bã\81\93ã\81¨ã\82\82ã\80\81 ç\89©ç\90\86ç\9a\84ã\81« (ã\82·ã\83³ã\83\9cã\83ªã\83\83ã\82¯ã\83ªã\83³ã\82¯è\87ªèº«ã\82\92è¦\8bã\81¦)
+辿ることも可能である。 また、階層中の移動の道筋を指示すること・ 余分なものを取り除くこと・階層の一部を再びたどることが可能である。
.PP
2 つの構造体がインクルードファイル \fI<fts.h>\fP で定義されている (さらに typedef されている)。 1
つ目は、ファイル階層そのものを表現する \fIFTS\fP 構造体である。 2 つ目は、ファイル階層中のファイルを表現する \fIFTSENT\fP 構造体である。
\fIfts_pointer\fP フィールドのみの初期化しか保証されない。
.TP
\fIfts_link\fP
-\fBfts_children\fP() から返される場合、 \fIfts_link\fP フィールドはディレクトリメンバーの NUL
-終端されたリンクリストの形式で、 次の構造体を指し示す。 それ以外の場合、 \fIfts_link\fP フィールドは定義されない。
+\fBfts_children\fP() から返される場合、 \fIfts_link\fP フィールドはディレクトリメンバーのヌル終端されたリンクリストの形式で、
+次の構造体を指し示す。 それ以外の場合、 \fIfts_link\fP フィールドは定義されない。
.TP
\fIfts_cycle\fP
2 つのディレクトリにハードリンクが張られているため、 または、シンボリックリンクがあるディレクトリを指しているために、
このファイルの \fBstat\fP(2) 情報へのポインタ。
.PP
ファイル階層中のすべてのファイルのパスに対して、 ただ 1 つのバッファーが使われる。 したがって、 \fIfts_path\fP と
-\fIfts_accpath\fP フィールドは、 \fBfts_read\fP() によって返された最も新しいファイルに対して「のみ」 NULL
-終端されることが保証される。 これらのフィールドを、他の \fIFTSENT\fP 構造体で表現されるファイルを参照するために使うには、 \fIFTSENT\fP
-æ§\8bé\80 ä½\93ã\81® \fIfts_pathlen\fP ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81«ã\81\82ã\82\8bæ\83\85å ±ã\82\92使ã\81£ã\81¦ã\83\91ã\82¹ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\82\92ä¿®æ£ã\81\99ã\82\8bå¿\85è¦\81ã\81\8cã\81\82ã\82\8bã\80\82 ã\81\93ã\82\8cã\82\89ã\81®ä¿®æ£ã\81¯ã\80\81ã\81\95ã\82\89ã\81«
-\fBfts_read\fP() を呼び出そうとする場合には、元に戻しておかなければならない。 \fIfts_name\fP フィールドは、常に \fBNUL\fP
-終端される。
+\fIfts_accpath\fP フィールドは、 \fBfts_read\fP()
+によって返された最も新しいファイルに対して「のみ」ヌル終端されることが保証される。 これらのフィールドを、他の \fIFTSENT\fP
+æ§\8bé\80 ä½\93ã\81§è¡¨ç\8f¾ã\81\95ã\82\8cã\82\8bã\83\95ã\82¡ã\82¤ã\83«ã\82\92å\8f\82ç\85§ã\81\99ã\82\8bã\81\9fã\82\81ã\81«ä½¿ã\81\86ã\81«ã\81¯ã\80\81 \fIFTSENT\fP æ§\8bé\80 ä½\93ã\81® \fIfts_pathlen\fP
+フィールドにある情報を使ってパスのバッファーを修正する必要がある。 これらの修正は、さらに \fBfts_read\fP()
+を呼び出そうとする場合には、元に戻しておかなければならない。 \fIfts_name\fP フィールドは、常に \fBNUL\fP 終端される。
.SS fts_open()
\fBfts_open\fP() 関数は、文字列ポインタの配列へのポインタを引き数に取る。 この文字列ポインタは、論理ファイル階層をつくる 1
-つ以上のパスの名前になる。 配列は、 \fBNULL\fP ポインタで終端されなければならない。
+つ以上のパスの名前になる。 配列は、 null ポインタで終端されなければならない。
.PP
.\" .Bl -tag -width "FTS_PHYSICAL"
多くのオプションがあり、少なくとも 1 つ (\fBFTS_LOGICAL\fP または \fBFTS_PHYSICAL\fP) が指定されなければならない。
\fIFTSENT\fP 構造体が返された後、 \fBfts_read\fP() の呼出しがあるまで、 これらの構造体は上書きされない。
.SS fts_children()
\fBfts_children\fP() 関数は、 \fIFTSENT\fP 構造体へのポインタを返す。 この構造体は、( \fBfts_read\fP()
-で最も新しく返された \fIFTSENT\fP 構造体で表現されるディレクトリにあるファイルの) NUL 終端されたリンクリストの最初のエントリを記述する。
+で最も新しく返された \fIFTSENT\fP 構造体で表現されるディレクトリにあるファイルの) ヌル終端されたリンクリストの最初のエントリを記述する。
このリストは、 \fIFTSENT\fP 構造体の \fIfts_link\fP フィールドを使ってリンクされ、
ユーザー指定の比較関数がある場合は、それで順序づけられる。 \fBfts_children\fP() の呼出しを繰り返すことで、
このリンクリストは再生成される。
.SH バージョン
これらの関数は、Linux では glibc2 から使用可能である。
.SH 準拠
+4.4BSD.
+.SH バグ
+.\" https://sourceware.org/bugzilla/show_bug.cgi?id=15838
+.\" https://sourceware.org/bugzilla/show_bug.cgi?id=11460
.\" The following statement is years old, and seems no closer to
.\" being true -- mtk
.\" The
.\" utility is expected to be included in a future
.\" POSIX.1
.\" revision.
-4.4BSD.
+このマニュアルページで説明した API はいずれも、 LFS API を使うプログラムをコンパイルする場合
+(例えば、\fI\-D_FILE_OFFSET_BITS=64\fP でコンパイルする場合など)、安全ではない。
.SH 関連項目
\fBfind\fP(1), \fBchdir\fP(2), \fBstat\fP(2), \fBftw\fP(3), \fBqsort\fP(3)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.40 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.65 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。