OSDN Git Service

Update draft pages
[linuxjm/LDP_man-pages.git] / draft / man3 / ftw.3
index b576cdf..a55a098 100644 (file)
 .\" This file was generated with po4a. Translate the source file.
 .\"
 .\"*******************************************************************
-.TH FTW 3 2010\-09\-20 Linux "Linux Programmer's Manual"
+.\"
+.\" Japanese Version Copyright (c) 1998 NAKANO Takeo all rights reserved.
+.\" Translated 1998-04-28, NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\" Updated & Modified 1999-09-14, NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\" Updated & Modified 2005-11-04, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
+.\" Updated 2006-07-26, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v2.36
+.\"
+.TH FTW 3 2014\-12\-31 Linux "Linux Programmer's Manual"
 .SH 名前
 ftw, nftw \- ファイルツリーを歩きまわる
 .SH 書式
@@ -84,7 +91,9 @@ ftw, nftw \- ファイルツリーを歩きまわる
 \fIfpath\fP が読み込みできないディレクトリである
 .TP 
 \fBFTW_NS\fP
-シンボリックリンクではない \fIfpath\fP に対する \fBstat\fP(2)  呼び出しが失敗した。
+\fBstat\fP(2) の呼び出しがシンボリックリンクでない \fIfpath\fP で失敗した。
+これのよくある原因は、呼び出し元が親ディレクトリに対する読み込み許可を持っており、 ファイル名 \fIfpath\fP
+を見ることができたが、実行許可は持っておらず、 そのため \fBstat\fP(2) ではそのファイルに到達できなかった、というものである。
 .sp
 \fIfpath\fP がシンボリックリンクで、かつ \fBstat\fP(2)  が失敗した場合、 \fBFTW_NS\fP と \fBFTW_SL\fP (後述)
 のどちらが \fItypeflag\fP に渡されるかは未定義であると、POSIX.1\-2001 には書かれている。
@@ -134,6 +143,7 @@ ftw, nftw \- ファイルツリーを歩きまわる
 \fBFTW_CHDIR\fP
 セットされると、ディレクトリの内容を処理する前に そのディレクトリに \fBchdir\fP(2)  する。このフラグは、 \fIfpath\fP
 が属すディレクトリで何らかの動作を実行する必要がある場合に 便利である。
+(このフラグを指定しても \fIfn\fP の \fIfpath\fP 引き数で渡されるパス名には影響しない。)
 .TP 
 \fBFTW_DEPTH\fP
 セットされると、帰りがけ順探索 (post\-order traversal) を行う。 つまり、ディレクトリそのものを引き数とした \fIfn\fP()
@@ -154,8 +164,9 @@ ftw, nftw \- ファイルツリーを歩きまわる
 \fBftw\fP()  と同じである。 \fItypeflag\fP には、 \fBftw\fP()  で取り得る値のいずれか、または以下の値のいずれかが渡される:
 .TP 
 \fBFTW_DP\fP
-\fIfpath\fP がディレクトリで、かつ \fIflags\fP で \fBFTW_DEPTH\fP が指定されていた。 \fIfpath\fP
-配下のファイルとサブディレクトリは全て処理が終わっている。
+\fIfpath\fP がディレクトリで、かつ \fIflags\fP で \fBFTW_DEPTH\fP が指定されていた (\fBFTW_DEPTH\fP が
+\fIflags\fP に指定されていなかった場合、 ディレクトリに対しては常に \fItypeflag\fP が \fBFTW_D\fP で \fIfn\fP()
+が呼び出される)。 \fIfpath\fP 配下のファイルとサブディレクトリは全て処理が終わっている。
 .TP 
 \fBFTW_SL\fP
 .\" To obtain the definition of this constant from
@@ -193,6 +204,8 @@ struct FTW {
 
 \fBnftw\fP()  が \fBFTW_ACTIONRETVAL\fP フラグ付きで呼ばれた場合、ツリーの探索を終了させるために \fIfn\fP()
 が使用できる、非 0 の値は \fBFTW_STOP\fP だけであり、 この値は \fBnftw\fP()  の返り値として返される。
+.SH バージョン
+\fBnftw\fP() は バージョン 2.1 以降の glibc で利用できる。
 .SH 準拠
 POSIX.1\-2001, SVr4, SUSv1.  POSIX.1\-2008 は \fBftw\fP()  を廃止予定としている。
 .SH 注意
@@ -204,18 +217,16 @@ POSIX.1\-2001 の注記によると、 \fIfn\fP がカレントワーキング
 を使うシステム、また \fBftw\fP()  が全てのシンボリックリンクに対して \fBFTW_SL\fP を使うシステムもある。
 予測可能な動作をさせるためには、 \fBnftw\fP()  を使うこと。
 .LP
-Linux では、 libc4, libc5, glibc 2.0.6 は 「stat できるがディレクトリではないオブジェクト」 (ファイル,
-シンボリックリンク, fifo 等)  に対してはすべて \fBFTW_F\fP を使う。
-
-\fBnftw\fP()  関数は glibc 2.1 以降で利用できる。
+「stat できるがディレクトリではないオブジェクト」 (ファイル, シンボリックリンク, fifo 等)  に対しては、すべて \fBFTW_F\fP
+が返される。
 
 \fBFTW_ACTIONRETVAL\fP は glibc 固有である。
 .SH 例
 以下のプログラムは、一つ目のコマンドライン引き数を名前に持つパス以下の ディレクトリツリーを探索する。引き数が指定されなかった場合は、
 カレントディレクトリ以下を探索する。 各々のファイルについて様々の情報が表示される。 二番目のコマンドライン引き数に文字を指定することで、
 \fBnftw\fP()  を呼び出す際に \fIflags\fP 引き数に渡す値を制御することができる。
+.SS プログラムのソース
 .nf
-
 #define _XOPEN_SOURCE 500
 #include <ftw.h>
 #include <stdio.h>
@@ -258,6 +269,6 @@ main(int argc, char *argv[])
 .SH 関連項目
 \fBstat\fP(2), \fBfts\fP(3), \fBreaddir\fP(3)
 .SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.78 の一部
 である。プロジェクトの説明とバグ報告に関する情報は
 http://www.kernel.org/doc/man\-pages/ に書かれている。