.\" Modified Sun Sep 24 20:15:46 2000 by aeb, following Petter Reinholdtsen.
.\" Modified 2001-12-26 by aeb, following Joey. Added versionsort.
.\"
-.\" FIXME glibc 2.15 adds scandirat()
+.\"*******************************************************************
.\"
-.\" Japanese Version Copyright (c) 1998 Hiroaki Nagoya all rights reserved.
-.\" Translated Thu May 28 1998 by Hiroaki Nagoya <nagoya@is.titech.ac.jp>
-.\" Updated & Modified Sat Jan 19 18:22:21 JST 2002
-.\" by Yuichi SATO <ysato@h4.dion.ne.jp>
-.\" Updated & Modified Sun Jan 16 08:12:04 JST 2005
-.\" by Yuichi SATO <ysato444@yahoo.co.jp>
+.\" This file was generated with po4a. Translate the source file.
.\"
-.TH SCANDIR 3 2011-09-08 "GNU" "Linux Programmer's Manual"
-.\"O .SH NAME
-.SH ̾Á°
-.\"O scandir, alphasort, versionsort \- scan a directory for matching entries
-scandir, alphasort, versionsort \- ¥Ç¥£¥ì¥¯¥È¥ê¤òÁöºº¤¹¤ë
-.\"O .SH SYNOPSIS
-.SH ½ñ¼°
+.\"*******************************************************************
+.TH SCANDIR 3 2012\-03\-20 GNU "Linux Programmer's Manual"
+.SH 名前
+scandir, alphasort, versionsort \- ディレクトリを走査する
+.SH 書式
.nf
-.B #include <dirent.h>
+\fB#include <dirent.h>\fP
.sp
-.BI "int scandir(const char *" dirp ", struct dirent ***" namelist ,
+\fBint scandir(const char *\fP\fIdirp\fP\fB, struct dirent ***\fP\fInamelist\fP\fB,\fP
.RS
-.BI "int (*" filter ")(const struct dirent *),"
-.BI "int (*" compar ")(const struct dirent **, const struct dirent **));"
+\fBint (*\fP\fIfilter\fP\fB)(const struct dirent *),\fP
+\fBint (*\fP\fIcompar\fP\fB)(const struct dirent **, const struct dirent **));\fP
.RE
.sp
-.BI "int alphasort(const void *" a ", const void *" b );
+\fBint alphasort(const void *\fP\fIa\fP\fB, const void *\fP\fIb\fP\fB);\fP
.sp
-.BI "int versionsort(const void *" a ", const void *" b );
+\fBint versionsort(const void *\fP\fIa\fP\fB, const void *\fP\fIb\fP\fB);\fP
.fi
.sp
.in -4n
-.\"O Feature Test Macro Requirements for glibc (see
-.\"O .BR feature_test_macros (7)):
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
-.RB ( feature_test_macros (7)
-»²¾È):
+glibc 向けの機能検査マクロの要件 (\fBfeature_test_macros\fP(7) 参照):
.in
.sp
-.BR scandir (),
-.BR alphasort ():
-_BSD_SOURCE || _SVID_SOURCE
+\fBscandir\fP(), \fBalphasort\fP(): _BSD_SOURCE || _SVID_SOURCE
.br
-.BR versionsort ():
-_GNU_SOURCE
-.\"O .SH DESCRIPTION
-.SH ÀâÌÀ
-.\"O The
-.\"O .BR scandir ()
-.\"O function scans the directory \fIdirp\fP, calling
-.\"O \fIfilter\fP() on each directory entry.
-.\"O Entries for which
-.\"O \fIfilter\fP() returns nonzero are stored in strings allocated via
-.\"O .BR malloc (3),
-.\"O sorted using
-.\"O .BR qsort (3)
-.\"O with the comparison
-.\"O function \fIcompar\fP() and collected in array \fInamelist\fP
-.\"O which is allocated via
-.\"O .BR malloc (3).
-.\"O If \fIfilter\fP is NULL, all entries are selected.
-´Ø¿ô
-.BR scandir ()
-¤Ï¥Ç¥£¥ì¥¯¥È¥ê \fIdirp\fP ¤òÁöºº¤·¡¢
-¥Ç¥£¥ì¥¯¥È¥ê¤Î³Æ¥¨¥ó¥È¥ê¤ò°ú¤¿ô¤È¤·¤Æ
-.BR filter ()
-¤ò¸Æ¤Ó½Ð¤¹¡£
-.BR filter ()
-¤¬ 0 °Ê³°¤ÎÃͤòÊÖ¤¹¥¨¥ó¥È¥ê¤Ï
-.BR malloc (3)
-¤Ë¤è¤Ã¤Æ
-³ÎÊݤµ¤ì¤¿Ê¸»úÎó¤ËÊݸ¤µ¤ì¡¢Èæ³Ó´Ø¿ô
-.BR compar ()
-¤òÍѤ¤¤Æ
-.BR qsort (3)
-¤Ë¤è¤ê¥½¡¼¥È¤µ¤ì¡¢
-.BR malloc (3)
-¤Ë¤è¤ê³ÎÊݤµ¤ì¤¿ÇÛÎó
-\fInamelist\fP ¤Ë¤Þ¤È¤á¤é¤ì¤ë¡£
-\fIfilter\fP ¤¬ NULL ¤Ê¤é¤Ð¡¢¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤¬ÁªÂò¤µ¤ì¤ë¡£
+\fBversionsort\fP(): _GNU_SOURCE
+.SH 説明
+関数 \fBscandir\fP() はディレクトリ \fIdirp\fP を走査し、 ディレクトリの各エントリを引き数として \fBfilter\fP()
+を呼び出す。 \fBfilter\fP() が 0 以外の値を返すエントリは \fBmalloc\fP(3) によって 確保された文字列に保存され、比較関数
+\fBcompar\fP() を用いて \fBqsort\fP(3) によりソートされ、 \fBmalloc\fP(3) により確保された配列
+\fInamelist\fP にまとめられる。 \fIfilter\fP が NULL ならば、すべてのエントリが選択される。
.LP
-.\"O The
-.\"O .BR alphasort ()
-.\"O and
-.\"O .BR versionsort ()
-.\"O functions can be used as the comparison function
-.\"O .IR compar ().
-Èæ³Ó´Ø¿ô
-.IR compar ()
-¤Ë¤Ï
-.BR alphasort ()
-´Ø¿ô¤È
-.BR versionsort ()
-´Ø¿ô¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¡£
-.\"O The former sorts directory entries using
-.\"O .BR strcoll (3),
-.\"O the latter using
-.\"O .BR strverscmp (3)
-.\"O on the strings \fI(*a)\->d_name\fP and \fI(*b)\->d_name\fP.
-.BR alphasort ()
-¤Ï
-.BR strcoll (3)
-¤òÍѤ¤¤Æ¥Ç¥£¥ì¥¯¥È¥ê¥¨¥ó¥È¥ê¤ò¥½¡¼¥È¤·¡¢
-.BR versionsort ()
-¤Ïʸ»úÎó \fI(*a)\->d_name\fP ¤È \fI(*b)\->d_name\fP ¤ËÂФ·¤Æ
-.BR strverscmp (3)
-¤òÍѤ¤¤ë¡£
-.\"O .SH "RETURN VALUE"
-.SH ÊÖ¤êÃÍ
-.\"O The
-.\"O .BR scandir ()
-.\"O function returns the number of directory entries
-.\"O selected or \-1 if an error occurs.
-´Ø¿ô
-.BR scandir ()
-¤ÏÁªÂò¤µ¤ì¤¿¥¨¥ó¥È¥ê¤Î¿ô¤«¡¢
-(¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç) \-1 ¤òÊÖ¤¹¡£
+比較関数 \fIcompar\fP() には \fBalphasort\fP() 関数と \fBversionsort\fP() 関数を使うことができる。
+\fBalphasort\fP() は \fBstrcoll\fP(3) を用いてディレクトリエントリをソートし、 \fBversionsort\fP() は文字列
+\fI(*a)\->d_name\fP と \fI(*b)\->d_name\fP に対して \fBstrverscmp\fP(3) を用いる。
+.SH 返り値
+関数 \fBscandir\fP() は選択されたエントリの数か、 (エラーが発生した場合) \-1 を返す。
.PP
-.\"O The
-.\"O .BR alphasort ()
-.\"O and
-.\"O .BR versionsort ()
-.\"O functions return an integer less than, equal to,
-.\"O or greater than zero if the first argument is considered to be
-.\"O respectively less than, equal to, or greater than the second.
-´Ø¿ô
-.BR alphasort ()
-¤È
-.BR versionsort ()
-¤Ï 1 ÈÖÌܤΰú¤¿ô¤¬ 2 ÈÖÌܤΰú¤¿ô¤ËÂФ·¤Æ¡¢
-[¾®¤µ¤¤/Åù¤·¤¤/Â礤¤] ¤«¤Ë±þ¤¸¤Æ¡¢0 ¤è¤ê [¾®¤µ¤¤/Åù¤·¤¤/Â礤¤] ÃͤòÊÖ¤¹¡£
-.\"O .SH ERRORS
-.SH ¥¨¥é¡¼
-.TP
-.B ENOENT
-.\"O The path in \fIdirp\fR does not exist.
-\fIdirp\fR ¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥¹¤¬Â¸ºß¤·¤Ê¤¤¡£
-.TP
-.B ENOMEM
-.\"O Insufficient memory to complete the operation.
-Æ°ºî¤ò´°¿ë¤¹¤ë¤Ë¤Ï¥á¥â¥ê¤¬Â¤ê¤Ê¤¤¡£
-.TP
-.B ENOTDIR
-.\"O The path in \fIdirp\fR is not a directory.
-\fIdirp\fR ¤Ç»ØÄꤵ¤ì¤¿¥Ñ¥¹¤¬¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤Ï¤Ê¤¤¡£
-.\"O .SH VERSIONS
-.SH ¥Ð¡¼¥¸¥ç¥ó
-.\"O .BR versionsort ()
-.\"O was added to glibc in version 2.1.
-.BR versionsort ()
-¤Ï¡¢glibc ¥Ð¡¼¥¸¥ç¥ó 2.1 ¤ÇÄɲ䵤줿¡£
-.\"O .SH "CONFORMING TO"
-.SH ½àµò
-.\"O .BR alphasort ()
-.\"O and
-.\"O .BR scandir ()
-.\"O are specified in POSIX.1-2008, and are widely available.
-.\"O .BR versionsort ()
-.\"O is a GNU extension.
-.BR alphasort ()
-¤È
-.BR scandir ()
-¤Ï POSIX.1-2008 ¤Çµ¬Äꤵ¤ì¤Æ¤ª¤ê¡¢¹¤¯ÍøÍѲÄǽ¤Ç¤¢¤ë¡£
-.BR versionsort ()
-¤Ï GNU ³ÈÄ¥¤Ç¤¢¤ë¡£
+関数 \fBalphasort\fP() と \fBversionsort\fP() は 1 番目の引き数が 2 番目の引き数に対して、
+[小さい/等しい/大きい] かに応じて、0 より [小さい/等しい/大きい] 値を返す。
+.SH エラー
+.TP
+\fBENOENT\fP
+\fIdirp\fP で指定されたパスが存在しない。
+.TP
+\fBENOMEM\fP
+操作を完了するのに十分なメモリがない。
+.TP
+\fBENOTDIR\fP
+\fIdirp\fP で指定されたパスがディレクトリではない。
+.SH バージョン
+\fBversionsort\fP() は、glibc バージョン 2.1 で追加された。
+.SH 準拠
+\fBalphasort\fP() と \fBscandir\fP() は POSIX.1\-2008 で規定されており、広く利用可能である。
+\fBversionsort\fP() は GNU 拡張である。
.LP
-.\"O The functions
-.\"O .BR scandir ()
-.\"O and
-.\"O .BR alphasort ()
-.\"O are from 4.3BSD, and have been available under Linux since libc4.
-´Ø¿ô
-.BR scandir ()
-¤È
-.BR alphasort ()
-¤Ï 4.3BSD ¤«¤é¼è¤êÆþ¤ì¤é¤ì¡¢Linux ¤Ç¤Ï libc4 ¤«¤é»ÈÍѲÄǽ¤Ë¤Ê¤Ã¤¿¡£
-.\"O Libc4 and libc5 use the more precise prototype
-libc4 ¤È libc5 ¤Ç¤Ï°Ê²¼¤Î¤è¤¦¤Ê¤â¤Ã¤È¾ÜºÙ¤Ê¥×¥í¥È¥¿¥¤¥×¤ò»È¤Ã¤Æ¤¤¤ë¡£
+関数 \fBscandir\fP() と \fBalphasort\fP() は 4.3BSD から取り入れられ、Linux では libc4
+から使用可能になった。 libc4 と libc5 では以下のようなもっと詳細なプロトタイプを使っている。
.sp
.nf
int alphasort(const struct dirent ** a,
const struct dirent **b);
.fi
.sp
-.\"O but glibc 2.0 returns to the imprecise BSD prototype.
-¤·¤«¤· glibc 2.0 ¤Ç¤ÏÉÔÀµ³Î¤Ê BSD ¤Î¥×¥í¥È¥¿¥¤¥×¤ËÌá¤Ã¤¿¡£
+しかし glibc 2.0 では不正確な BSD のプロトタイプに戻った。
.LP
-.\"O The function
-.\"O .BR versionsort ()
-.\"O is a GNU extension, available since glibc 2.1.
-´Ø¿ô
-.BR versionsort ()
-¤Ï GNU ¤Î³ÈÄ¥¤Ç¤¢¤ê¡¢glibc 2.1 °Ê¹ß¤Ç»ÈÍѲÄǽ¤Ç¤¢¤ë¡£
+関数 \fBversionsort\fP() は GNU の拡張であり、glibc 2.1 以降で使用可能である。
.LP
-.\"O Since glibc 2.1,
-.\"O .BR alphasort ()
-.\"O calls
-.\"O .BR strcoll (3);
-.\"O earlier it used
-.\"O .BR strcmp (3).
-glibc 2.1 °Ê¹ß¤Ç¤Ï
-.BR alphasort ()
-¤Ï
-.BR strcoll (3)
-¤ò¸Æ¤Ó½Ð¤¹¡£
-.BR alphasort ()
-¤Ï°ÊÁ°¤Ï
-.BR strcmp (3)
-¤ò»È¤Ã¤Æ¤¤¤¿¡£
-.\"O .SH EXAMPLE
-.SH Îã
+glibc 2.1 以降では \fBalphasort\fP() は \fBstrcoll\fP(3) を呼び出す。 \fBalphasort\fP() は以前は
+\fBstrcmp\fP(3) を使っていた。
+.SH 例
.nf
#define _SVID_SOURCE
-.\"O /* print files in current directory in reverse order */
-/* ¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤Î¥Õ¥¡¥¤¥ë¤òµÕ½ç¤Ë½ÐÎϤ¹¤ë */
+/* カレントディレクトリのファイルを逆順に出力する */
#include <dirent.h>
int
}
}
.fi
-.\"O .SH "SEE ALSO"
-.SH ´ØÏ¢¹àÌÜ
-.BR closedir (3),
-.BR fnmatch (3),
-.BR opendir (3),
-.BR readdir (3),
-.BR rewinddir (3),
-.BR seekdir (3),
-.BR strcmp (3),
-.BR strcoll (3),
-.BR strverscmp (3),
-.BR telldir (3)
+.SH 関連項目
+\fBclosedir\fP(3), \fBfnmatch\fP(3), \fBopendir\fP(3), \fBreaddir\fP(3),
+\fBrewinddir\fP(3), \fBscandirat\fP(3), \fBseekdir\fP(3), \fBstrcmp\fP(3),
+\fBstrcoll\fP(3), \fBstrverscmp\fP(3), \fBtelldir\fP(3)