# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2014-04-24 00:50+0900\n" "PO-Revision-Date: 2014-04-24 02:36+0900\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: TH #: build/C/man3/closedir.3:31 #, no-wrap msgid "CLOSEDIR" msgstr "CLOSEDIR" #. type: TH #: build/C/man3/closedir.3:31 #, no-wrap msgid "2008-09-23" msgstr "2008-09-23" #. type: TH #: build/C/man3/closedir.3:31 build/C/man3/dirfd.3:25 #: build/C/man2/getdents.2:30 build/C/man3/getdirentries.3:27 #: build/C/man3/opendir.3:32 build/C/man2/readdir.2:30 #: build/C/man3/readdir.3:36 build/C/man3/rewinddir.3:31 #: build/C/man3/scandir.3:62 build/C/man3/seekdir.3:31 #: build/C/man3/telldir.3:30 #, no-wrap msgid "Linux Programmer's Manual" msgstr "Linux Programmer's Manual" #. type: SH #: build/C/man3/closedir.3:32 build/C/man3/dirfd.3:26 #: build/C/man2/getdents.2:31 build/C/man3/getdirentries.3:28 #: build/C/man3/opendir.3:33 build/C/man2/readdir.2:31 #: build/C/man3/readdir.3:37 build/C/man3/rewinddir.3:32 #: build/C/man3/scandir.3:63 build/C/man3/seekdir.3:32 #: build/C/man3/telldir.3:31 #, no-wrap msgid "NAME" msgstr "名前" #. type: Plain text #: build/C/man3/closedir.3:34 msgid "closedir - close a directory" msgstr "closedir - ディレクトリをクローズする" #. type: SH #: build/C/man3/closedir.3:34 build/C/man3/dirfd.3:28 #: build/C/man2/getdents.2:33 build/C/man3/getdirentries.3:30 #: build/C/man3/opendir.3:35 build/C/man2/readdir.2:33 #: build/C/man3/readdir.3:39 build/C/man3/rewinddir.3:34 #: build/C/man3/scandir.3:66 build/C/man3/seekdir.3:35 #: build/C/man3/telldir.3:33 #, no-wrap msgid "SYNOPSIS" msgstr "書式" #. type: Plain text #: build/C/man3/closedir.3:37 build/C/man3/opendir.3:38 #: build/C/man3/rewinddir.3:37 #, no-wrap msgid "B<#include Esys/types.hE>\n" msgstr "B<#include Esys/types.hE>\n" #. type: Plain text #: build/C/man3/closedir.3:39 build/C/man3/opendir.3:40 #: build/C/man3/readdir.3:42 build/C/man3/rewinddir.3:39 #: build/C/man3/scandir.3:69 build/C/man3/seekdir.3:38 #: build/C/man3/telldir.3:36 #, no-wrap msgid "B<#include Edirent.hE>\n" msgstr "B<#include Edirent.hE>\n" #. type: Plain text #: build/C/man3/closedir.3:41 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: SH #: build/C/man3/closedir.3:42 build/C/man3/dirfd.3:54 #: build/C/man2/getdents.2:41 build/C/man3/getdirentries.3:43 #: build/C/man3/opendir.3:63 build/C/man2/readdir.2:42 #: build/C/man3/readdir.3:61 build/C/man3/rewinddir.3:42 #: build/C/man3/scandir.3:118 build/C/man3/seekdir.3:49 #: build/C/man3/telldir.3:47 #, no-wrap msgid "DESCRIPTION" msgstr "説明" #. type: Plain text #: build/C/man3/closedir.3:55 msgid "" "The B() function closes the directory stream associated with " "I. A successful call to B() also closes the underlying " "file descriptor associated with I. The directory stream descriptor " "I is not available after this call." msgstr "" "B() 関数は I に関連付けられた ディレクトリストリームをクロー" "ズする。\n" "B() の呼び出しが成功すると、 I に関連付けられた\n" "ファイルディスクリプタもクローズされる。\n" "ディレクトリストリームディスクリプタ (directory stream descriptor) I " "は、\n" "この呼び出しの後では使用することができない。" #. type: SH #: build/C/man3/closedir.3:55 build/C/man3/dirfd.3:69 #: build/C/man2/getdents.2:142 build/C/man3/getdirentries.3:56 #: build/C/man3/opendir.3:83 build/C/man2/readdir.2:91 #: build/C/man3/readdir.3:119 build/C/man3/rewinddir.3:49 #: build/C/man3/scandir.3:184 build/C/man3/seekdir.3:60 #: build/C/man3/telldir.3:52 #, no-wrap msgid "RETURN VALUE" msgstr "返り値" #. type: Plain text #: build/C/man3/closedir.3:62 msgid "" "The B() function returns 0 on success. On error, -1 is returned, " "and I is set appropriately." msgstr "" "B() 関数は成功時に 0 を返す。 エラーの場合は、-1 が返されて、 " "I が適切に設定される。" #. type: SH #: build/C/man3/closedir.3:62 build/C/man3/dirfd.3:74 #: build/C/man2/getdents.2:148 build/C/man3/getdirentries.3:62 #: build/C/man3/opendir.3:92 build/C/man2/readdir.2:97 #: build/C/man3/readdir.3:143 build/C/man3/scandir.3:200 #: build/C/man3/telldir.3:60 #, no-wrap msgid "ERRORS" msgstr "エラー" #. type: TP #: build/C/man3/closedir.3:63 build/C/man2/getdents.2:149 #: build/C/man3/opendir.3:96 build/C/man2/readdir.2:98 #: build/C/man3/readdir.3:144 build/C/man3/scandir.3:213 #: build/C/man3/telldir.3:61 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/closedir.3:67 build/C/man3/readdir.3:147 #: build/C/man3/telldir.3:64 msgid "Invalid directory stream descriptor I." msgstr "ディレクトリストリームディスクリプタ I が無効である。" #. type: SH #: build/C/man3/closedir.3:67 build/C/man3/dirfd.3:92 #: build/C/man2/getdents.2:165 build/C/man3/getdirentries.3:64 #: build/C/man3/opendir.3:118 build/C/man2/readdir.2:114 #: build/C/man3/readdir.3:156 build/C/man3/rewinddir.3:58 #: build/C/man3/scandir.3:229 build/C/man3/seekdir.3:69 #: build/C/man3/telldir.3:69 #, no-wrap msgid "CONFORMING TO" msgstr "準拠" #. type: Plain text #: build/C/man3/closedir.3:69 msgid "SVr4, POSIX.1-2001, 4.3BSD." msgstr "SVr4, POSIX.1-2001, 4.3BSD." #. type: SH #: build/C/man3/closedir.3:69 build/C/man3/dirfd.3:104 #: build/C/man2/getdents.2:282 build/C/man3/getdirentries.3:72 #: build/C/man3/opendir.3:140 build/C/man2/readdir.2:127 #: build/C/man3/readdir.3:265 build/C/man3/rewinddir.3:60 #: build/C/man3/scandir.3:283 build/C/man3/seekdir.3:83 #: build/C/man3/telldir.3:95 #, no-wrap msgid "SEE ALSO" msgstr "関連項目" #. type: Plain text #: build/C/man3/closedir.3:77 msgid "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3)" msgstr "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3)" #. type: SH #: build/C/man3/closedir.3:77 build/C/man3/dirfd.3:113 #: build/C/man2/getdents.2:285 build/C/man3/getdirentries.3:75 #: build/C/man3/opendir.3:149 build/C/man2/readdir.2:130 #: build/C/man3/readdir.3:277 build/C/man3/rewinddir.3:67 #: build/C/man3/scandir.3:294 build/C/man3/seekdir.3:91 #: build/C/man3/telldir.3:102 #, no-wrap msgid "COLOPHON" msgstr "この文書について" #. type: Plain text #: build/C/man3/closedir.3:84 build/C/man3/dirfd.3:120 #: build/C/man2/getdents.2:292 build/C/man3/getdirentries.3:82 #: build/C/man3/opendir.3:156 build/C/man2/readdir.2:137 #: build/C/man3/readdir.3:284 build/C/man3/rewinddir.3:74 #: build/C/man3/scandir.3:301 build/C/man3/seekdir.3:98 #: build/C/man3/telldir.3:109 msgid "" "This page is part of release 3.65 of the Linux I project. A " "description of the project, and information about reporting bugs, can be " "found at \\%http://www.kernel.org/doc/man-pages/." msgstr "" "この man ページは Linux I プロジェクトのリリース 3.65 の一部\n" "である。プロジェクトの説明とバグ報告に関する情報は\n" "http://www.kernel.org/doc/man-pages/ に書かれている。" #. type: TH #: build/C/man3/dirfd.3:25 #, no-wrap msgid "DIRFD" msgstr "DIRFD" #. type: TH #: build/C/man3/dirfd.3:25 #, no-wrap msgid "2013-07-05" msgstr "2013-07-05" #. type: TH #: build/C/man3/dirfd.3:25 build/C/man2/getdents.2:30 #: build/C/man2/readdir.2:30 #, no-wrap msgid "Linux" msgstr "Linux" #. type: Plain text #: build/C/man3/dirfd.3:28 msgid "dirfd - get directory stream file descriptor" msgstr "dirfd - ディレクトリストリームのファイルディスクリプタを取得する" #. type: Plain text #: build/C/man3/dirfd.3:30 msgid "B<#include Esys/types.hE>" msgstr "B<#include Esys/types.hE>" #. type: Plain text #: build/C/man3/dirfd.3:32 build/C/man3/getdirentries.3:32 msgid "B<#include Edirent.hE>" msgstr "B<#include Edirent.hE>" #. type: Plain text #: build/C/man3/dirfd.3:34 msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: build/C/man3/dirfd.3:38 build/C/man3/getdirentries.3:39 #: build/C/man3/opendir.3:48 build/C/man3/readdir.3:52 #: build/C/man3/scandir.3:96 build/C/man3/seekdir.3:45 #: build/C/man3/telldir.3:43 msgid "" "Feature Test Macro Requirements for glibc (see B(7)):" msgstr "glibc 向けの機能検査マクロの要件 (B(7) 参照):" #. type: Plain text #: build/C/man3/dirfd.3:41 msgid "B():" msgstr "B():" #. type: Plain text #: build/C/man3/dirfd.3:46 build/C/man3/scandir.3:105 msgid "_BSD_SOURCE || _SVID_SOURCE" msgstr "_BSD_SOURCE || _SVID_SOURCE" #. type: Plain text #: build/C/man3/dirfd.3:48 build/C/man3/scandir.3:107 msgid "|| /* Since glibc 2.10: */" msgstr "|| /* glibc 2.10 以降: */" #. type: Plain text #: build/C/man3/dirfd.3:50 build/C/man3/scandir.3:109 msgid "(_POSIX_C_SOURCE\\ E=\\ 200809L || _XOPEN_SOURCE\\ E=\\ 700)" msgstr "(_POSIX_C_SOURCE\\ E=\\ 200809L || _XOPEN_SOURCE\\ E=\\ 700)" #. type: Plain text #: build/C/man3/dirfd.3:59 msgid "" "The function B() returns the file descriptor associated with the " "directory stream I." msgstr "" "関数 B() はディレクトリストリーム I に関連づけられたファイル" "ディスクリプタを返す。" #. type: Plain text #: build/C/man3/dirfd.3:69 msgid "" "This descriptor is the one used internally by the directory stream. As a " "result, it is useful only for functions which do not depend on or alter the " "file position, such as B(2) and B(2). It will be " "automatically closed when B(3) is called." msgstr "" "このディスクリプタはディレクトリストリームが内部で使用するものである。 よっ" "て、ファイルの位置に依存せず、かつその位置を変更しない関数 B(2) や " "B(2) などでしか役に立たない。 このディスクリプタは B(3) " "が呼ばれたときに自動的にクローズされる。" #. type: Plain text #: build/C/man3/dirfd.3:74 msgid "" "On success, a nonnegative file descriptor is returned. On error, -1 is " "returned, and I is set to indicate the cause of the error." msgstr "" "成功すると、負でない値のファイルディスクリプタが返される。 エラーの場合は -1 " "が返され、 I にエラーの原因を示す値が設定される。" #. glibc 2.8 #. type: Plain text #: build/C/man3/dirfd.3:79 msgid "" "POSIX.1-2008 specifies two errors, neither of which is returned by the " "current implementation." msgstr "" "POSIX.1-2008 では 2 つのエラーが規定されている。 現在の実装ではどちらのエラー" "も返されない。" #. type: TP #: build/C/man3/dirfd.3:79 build/C/man2/getdents.2:156 #: build/C/man2/readdir.2:105 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/dirfd.3:83 msgid "I does not refer to a valid directory stream." msgstr "I が有効なディレクトリストリームを参照していない。" #. type: TP #: build/C/man3/dirfd.3:83 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/dirfd.3:87 msgid "" "The implementation does not support the association of a file descriptor " "with a directory." msgstr "" "この実装では、ファイルディスクリプタのディレクトリとの関連付けが サポートされ" "ていない。" #. type: SH #: build/C/man3/dirfd.3:87 build/C/man3/readdir.3:147 #: build/C/man3/rewinddir.3:53 build/C/man3/seekdir.3:64 #: build/C/man3/telldir.3:64 #, no-wrap msgid "ATTRIBUTES" msgstr "属性" #. type: SS #: build/C/man3/dirfd.3:88 build/C/man3/readdir.3:148 #: build/C/man3/rewinddir.3:54 build/C/man3/seekdir.3:65 #: build/C/man3/telldir.3:65 #, no-wrap msgid "Multithreading (see pthreads(7))" msgstr "マルチスレッディング (pthreads(7) 参照)" #. type: Plain text #: build/C/man3/dirfd.3:92 msgid "The B() function is thread-safe." msgstr "B() 関数はスレッドセーフである。" #. It is present in libc5 (since 5.1.2) and in glibc2. #. type: Plain text #: build/C/man3/dirfd.3:96 msgid "" "POSIX.1-2008. This function was a BSD extension, present in 4.3BSD-Reno, " "not in 4.2BSD." msgstr "" "POSIX.1-2008. この関数は BSD 拡張であった。 4.3BSD-Reno には存在するが、" "4.2BSD には存在しない。" #. type: SH #: build/C/man3/dirfd.3:96 build/C/man2/getdents.2:168 #: build/C/man3/opendir.3:123 build/C/man2/readdir.2:116 #: build/C/man3/readdir.3:158 build/C/man3/scandir.3:252 #: build/C/man3/seekdir.3:71 build/C/man3/telldir.3:71 #, no-wrap msgid "NOTES" msgstr "注意" #. type: Plain text #: build/C/man3/dirfd.3:104 msgid "" "The prototype for B() is available only if B<_BSD_SOURCE> or " "B<_SVID_SOURCE> is defined." msgstr "" "B() のプロトタイプが使用可能なのは、 B<_BSD_SOURCE> または " "B<_SVID_SOURCE> が定義されたときのみである。" #. type: Plain text #: build/C/man3/dirfd.3:113 msgid "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3), B(3)" msgstr "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3), B(3)" #. type: TH #: build/C/man2/getdents.2:30 #, no-wrap msgid "GETDENTS" msgstr "GETDENTS" #. type: TH #: build/C/man2/getdents.2:30 #, no-wrap msgid "2012-08-03" msgstr "2012-08-03" #. type: Plain text #: build/C/man2/getdents.2:33 msgid "getdents - get directory entries" msgstr "getdents - ディレクトリ・エントリを取得する" #. type: Plain text #: build/C/man2/getdents.2:37 #, no-wrap msgid "" "BIB<, struct linux_dirent *>IB<,>\n" "B< unsigned int >IB<);>\n" msgstr "" "BIB<, struct linux_dirent *>IB<,>\n" "B< unsigned int >IB<);>\n" #. type: Plain text #: build/C/man2/getdents.2:41 build/C/man2/readdir.2:42 msgid "I: There is no glibc wrapper for this system call; see NOTES." msgstr "" "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節" "を参照。" #. type: Plain text #: build/C/man2/getdents.2:47 msgid "" "This is not the function you are interested in. Look at B(3) for " "the POSIX conforming C library interface. This page documents the bare " "kernel system call interface." msgstr "" "これはあなたの関心を引くような関数ではない。 POSIX 準拠の C ライブラリイン" "ターフェースについては B(3) を見ること。 このページは、カーネルシス" "テムコールの生のインターフェースについて 記載したものである。" #. type: Plain text #: build/C/man2/getdents.2:60 msgid "" "The system call B() reads several I structures from " "the directory referred to by the open file descriptor I into the buffer " "pointed to by I. The argument I specifies the size of that " "buffer." msgstr "" "B() システムコールは、オープン済みのファイルディスクリプタ I " "で参照されるディレクトリから I 構造体をいくつか読み出し、 " "I が指しているバッファに格納する。 I 引き数はそのバッファのサイ" "ズを示す。" #. type: Plain text #: build/C/man2/getdents.2:64 msgid "The I structure is declared as follows:" msgstr "I 構造体は以下のように宣言されている:" #. type: Plain text #: build/C/man2/getdents.2:79 #, no-wrap msgid "" "struct linux_dirent {\n" " unsigned long d_ino; /* Inode number */\n" " unsigned long d_off; /* Offset to next I */\n" " unsigned short d_reclen; /* Length of this I */\n" " char d_name[]; /* Filename (null-terminated) */\n" " /* length is actually (d_reclen - 2 -\n" " offsetof(struct linux_dirent, d_name)) */\n" " /*\n" " char pad; // Zero padding byte\n" " char d_type; // File type (only since Linux\n" " // 2.6.4); offset is (d_reclen - 1)\n" " */\n" msgstr "" "struct linux_dirent {\n" " unsigned long d_ino; /* Inode number */\n" " unsigned long d_off; /* Offset to next I */\n" " unsigned short d_reclen; /* Length of this I */\n" " char d_name[]; /* Filename (null-terminated) */\n" " /* length is actually (d_reclen - 2 -\n" " offsetof(struct linux_dirent, d_name)) */\n" " /*\n" " char pad; // Zero padding byte\n" " char d_type; // File type (only since Linux\n" " // 2.6.4); offset is (d_reclen - 1)\n" " */\n" #. type: Plain text #: build/C/man2/getdents.2:81 #, no-wrap msgid "}\n" msgstr "}\n" #. type: Plain text #: build/C/man2/getdents.2:94 msgid "" "I is an inode number. I is the distance from the start of the " "directory to the start of the next I. I is the size " "of this entire I. I is a null-terminated filename." msgstr "" "I は inode 番号である。 I はディレクトリの先頭から次の " "I の先頭までの距離である。 I はこの I " "全体のサイズである。 I はヌル(null)文字で終わるファイル名である。" #. type: Plain text #: build/C/man2/getdents.2:99 msgid "" "I is a byte at the end of the structure that indicates the file " "type. It contains one of the following values (defined in Idirent." "hE>):" msgstr "" "I は、構造体の最後のバイトであり、ファイルタイプを示す。 I は" "以下の値の一つを取る (Idirent.hE> で定義されている)。" #. type: TP #: build/C/man2/getdents.2:99 build/C/man3/readdir.3:200 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:102 build/C/man3/readdir.3:203 msgid "This is a block device." msgstr "ブロックデバイスである。" #. type: TP #: build/C/man2/getdents.2:102 build/C/man3/readdir.3:203 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:105 build/C/man3/readdir.3:206 msgid "This is a character device." msgstr "キャラクタデバイスである。" #. type: TP #: build/C/man2/getdents.2:105 build/C/man3/readdir.3:206 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:108 build/C/man3/readdir.3:209 msgid "This is a directory." msgstr "ディレクトリである。" #. type: TP #: build/C/man2/getdents.2:108 build/C/man3/readdir.3:209 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:111 build/C/man3/readdir.3:212 msgid "This is a named pipe (FIFO)." msgstr "名前付きパイプ (FIFO) である。" #. type: TP #: build/C/man2/getdents.2:111 build/C/man3/readdir.3:212 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:114 build/C/man3/readdir.3:215 msgid "This is a symbolic link." msgstr "シンボリックリンクである。" #. type: TP #: build/C/man2/getdents.2:114 build/C/man3/readdir.3:215 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:117 build/C/man3/readdir.3:218 msgid "This is a regular file." msgstr "通常のファイルである。" #. type: TP #: build/C/man2/getdents.2:117 build/C/man3/readdir.3:218 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:120 build/C/man3/readdir.3:221 msgid "This is a UNIX domain socket." msgstr "UNIX ドメインソケットである。" #. type: TP #: build/C/man2/getdents.2:120 build/C/man3/readdir.3:221 #, no-wrap msgid "B" msgstr "B" #. The glibc manual says that on some systems this is the only #. value returned #. type: Plain text #: build/C/man2/getdents.2:123 build/C/man3/readdir.3:226 msgid "The file type is unknown." msgstr "ファイルタイプが不明である。" #. type: Plain text #: build/C/man2/getdents.2:133 msgid "" "The I field is implemented since Linux 2.6.4. It occupies a space " "that was previously a zero-filled padding byte in the I " "structure. Thus, on kernels before 2.6.3, attempting to access this field " "always provides the value 0 (B)." msgstr "" "I フィールドは Linux 2.6.4 から実装されている。 これは " "I 構造体のうち、以前はゼロで埋められていた空間に配置されてい" "る。 従って、2.6.3 以前のカーネルでは、このフィールドにアクセスしようとする" "と 常に値 0 (B) が返される。" #. kernel 2.6.27 #. The same sentence is in getdents.2 #. type: Plain text #: build/C/man2/getdents.2:142 build/C/man3/readdir.3:240 msgid "" "Currently, only some filesystems (among them: Btrfs, ext2, ext3, and ext4) " "have full support for returning the file type in I. All " "applications must properly handle a return of B." msgstr "" "現在のところ、 I でファイルタイプを返す機能が完全にサポートされている" "のは、 いくつかのファイルシステムにおいてのみである (Btrfs, ext2, ext3, ext4 " "はサポートしている)。 どのアプリケーションも、 B が返された際に適" "切に処理できなければならない。" #. type: Plain text #: build/C/man2/getdents.2:148 msgid "" "On success, the number of bytes read is returned. On end of directory, 0 is " "returned. On error, -1 is returned, and I is set appropriately." msgstr "" "成功した場合は、読み込んだバイト数が返される。 ディレクトリの終わりならば 0 " "が返される。 エラーの場合は -1 を返され、 I に適切な値が設定される。" #. type: Plain text #: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102 msgid "Invalid file descriptor I." msgstr "ファイルディスクリプタ I が不正である。" #. type: TP #: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:156 build/C/man2/readdir.2:105 msgid "Argument points outside the calling process's address space." msgstr "引き数が呼び出したプロセスのアドレス空間外を指している。" #. type: Plain text #: build/C/man2/getdents.2:159 build/C/man2/readdir.2:108 msgid "Result buffer is too small." msgstr "結果用のバッファーが小さすぎる。" #. type: TP #: build/C/man2/getdents.2:159 build/C/man3/opendir.3:106 #: build/C/man2/readdir.2:108 build/C/man3/scandir.3:201 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:162 build/C/man2/readdir.2:111 msgid "No such directory." msgstr "そのようなディレクトリは存在しない。" #. type: TP #: build/C/man2/getdents.2:162 build/C/man3/opendir.3:112 #: build/C/man2/readdir.2:111 build/C/man3/scandir.3:207 #: build/C/man3/scandir.3:217 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man2/getdents.2:165 build/C/man2/readdir.2:114 msgid "File descriptor does not refer to a directory." msgstr "ファイルディスクリプタがディレクトリを参照していない。" #. SVr4 documents additional ENOLINK, EIO error conditions. #. type: Plain text #: build/C/man2/getdents.2:168 msgid "SVr4." msgstr "SVr4." #. type: Plain text #: build/C/man2/getdents.2:177 msgid "" "Glibc does not provide a wrapper for this system call; call it using " "B(2). You will need to define the I structure " "yourself. However, you probably want to use B(3) instead." msgstr "" "glibc はこのシステムコールに対するラッパー関数を提供していないので、 " "B(2) を使って呼び出すこと。 I 構造体は自分で定義する" "必要がある。しかし、たいていはこのシステムコールではなく B(3) を使う" "べき場面のことが多い。" #. type: Plain text #: build/C/man2/getdents.2:180 msgid "This call supersedes B(2)." msgstr "このシステムコールは B(2) を置き換えるものである。" #. type: Plain text #: build/C/man2/getdents.2:193 msgid "" "The original Linux B() system call did not handle large " "filesystems and large file offsets. Consequently, Linux 2.4 added " "B(), with wider types for the I and I fields " "employed in the I structure." msgstr "" "元々の Linux の B() システムコールは、大きなファイルシステムと\n" "大きなファイルオフセットを扱うことができなかった。\n" "その結果、Linux 2.4 で B() が追加された。\n" "B() では、I 構造体のフィールド I と\n" "I でビット幅の大きなデータ型が使われている。" #. type: SH #: build/C/man2/getdents.2:193 build/C/man3/scandir.3:259 #, no-wrap msgid "EXAMPLE" msgstr "例" #. FIXME: This program uses the older getdents() system call #. and the structure with smaller field widths. #. type: Plain text #: build/C/man2/getdents.2:200 msgid "" "The program below demonstrates the use of B(). The following " "output shows an example of what we see when running this program on an ext2 " "directory:" msgstr "" "下記のプログラムは B() の使用例を示したものである。 以下は、このプ" "ログラムを ext2 ディレクトリで実行した際に得られる 出力の例である。" #. type: Plain text #: build/C/man2/getdents.2:213 #, no-wrap msgid "" "$B< ./a.out /testfs/>\n" "--------------- nread=120 ---------------\n" "i-node# file type d_reclen d_off d_name\n" " 2 directory 16 12 .\n" " 2 directory 16 24 ..\n" " 11 directory 24 44 lost+found\n" " 12 regular 16 56 a\n" " 228929 directory 16 68 sub\n" " 16353 directory 16 80 sub2\n" " 130817 directory 16 4096 sub3\n" msgstr "" "$B< ./a.out /testfs/>\n" "--------------- nread=120 ---------------\n" "i-node# file type d_reclen d_off d_name\n" " 2 directory 16 12 .\n" " 2 directory 16 24 ..\n" " 11 directory 24 44 lost+found\n" " 12 regular 16 56 a\n" " 228929 directory 16 68 sub\n" " 16353 directory 16 80 sub2\n" " 130817 directory 16 4096 sub3\n" #. type: SS #: build/C/man2/getdents.2:215 #, no-wrap msgid "Program source" msgstr "プログラムのソース" #. type: Plain text #: build/C/man2/getdents.2:226 #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Edirent.hE /* Defines DT_* constants */\n" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Eunistd.hE\n" "#include Estdlib.hE\n" "#include Esys/stat.hE\n" "#include Esys/syscall.hE\n" msgstr "" "#define _GNU_SOURCE\n" "#include Edirent.hE /* Defines DT_* constants */\n" "#include Efcntl.hE\n" "#include Estdio.hE\n" "#include Eunistd.hE\n" "#include Estdlib.hE\n" "#include Esys/stat.hE\n" "#include Esys/syscall.hE\n" #. type: Plain text #: build/C/man2/getdents.2:229 #, no-wrap msgid "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" msgstr "" "#define handle_error(msg) \\e\n" " do { perror(msg); exit(EXIT_FAILURE); } while (0)\n" #. type: Plain text #: build/C/man2/getdents.2:236 #, no-wrap msgid "" "struct linux_dirent {\n" " long d_ino;\n" " off_t d_off;\n" " unsigned short d_reclen;\n" " char d_name[];\n" "};\n" msgstr "" "struct linux_dirent {\n" " long d_ino;\n" " off_t d_off;\n" " unsigned short d_reclen;\n" " char d_name[];\n" "};\n" #. type: Plain text #: build/C/man2/getdents.2:238 #, no-wrap msgid "#define BUF_SIZE 1024\n" msgstr "#define BUF_SIZE 1024\n" #. type: Plain text #: build/C/man2/getdents.2:247 #, no-wrap msgid "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd, nread;\n" " char buf[BUF_SIZE];\n" " struct linux_dirent *d;\n" " int bpos;\n" " char d_type;\n" msgstr "" "int\n" "main(int argc, char *argv[])\n" "{\n" " int fd, nread;\n" " char buf[BUF_SIZE];\n" " struct linux_dirent *d;\n" " int bpos;\n" " char d_type;\n" #. type: Plain text #: build/C/man2/getdents.2:251 #, no-wrap msgid "" " fd = open(argc E 1 ? argv[1] : \".\", O_RDONLY | O_DIRECTORY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" msgstr "" " fd = open(argc E 1 ? argv[1] : \".\", O_RDONLY | O_DIRECTORY);\n" " if (fd == -1)\n" " handle_error(\"open\");\n" #. type: Plain text #: build/C/man2/getdents.2:256 #, no-wrap msgid "" " for ( ; ; ) {\n" " nread = syscall(SYS_getdents, fd, buf, BUF_SIZE);\n" " if (nread == -1)\n" " handle_error(\"getdents\");\n" msgstr "" " for ( ; ; ) {\n" " nread = syscall(SYS_getdents, fd, buf, BUF_SIZE);\n" " if (nread == -1)\n" " handle_error(\"getdents\");\n" #. type: Plain text #: build/C/man2/getdents.2:259 #, no-wrap msgid "" " if (nread == 0)\n" " break;\n" msgstr "" " if (nread == 0)\n" " break;\n" #. type: Plain text #: build/C/man2/getdents.2:278 #, no-wrap msgid "" " printf(\"--------------- nread=%d ---------------\\en\", nread);\n" " printf(\"i-node# file type d_reclen d_off d_name\\en\");\n" " for (bpos = 0; bpos E nread;) {\n" " d = (struct linux_dirent *) (buf + bpos);\n" " printf(\"%8ld \", d-Ed_ino);\n" " d_type = *(buf + bpos + d-Ed_reclen - 1);\n" " printf(\"%-10s \", (d_type == DT_REG) ? \"regular\" :\n" " (d_type == DT_DIR) ? \"directory\" :\n" " (d_type == DT_FIFO) ? \"FIFO\" :\n" " (d_type == DT_SOCK) ? \"socket\" :\n" " (d_type == DT_LNK) ? \"symlink\" :\n" " (d_type == DT_BLK) ? \"block dev\" :\n" " (d_type == DT_CHR) ? \"char dev\" : \"???\");\n" " printf(\"%4d %10lld %s\\en\", d-Ed_reclen,\n" " (long long) d-Ed_off, d-Ed_name);\n" " bpos += d-Ed_reclen;\n" " }\n" " }\n" msgstr "" " printf(\"--------------- nread=%d ---------------\\en\", nread);\n" " printf(\"i-node# file type d_reclen d_off d_name\\en\");\n" " for (bpos = 0; bpos E nread;) {\n" " d = (struct linux_dirent *) (buf + bpos);\n" " printf(\"%8ld \", d-Ed_ino);\n" " d_type = *(buf + bpos + d-Ed_reclen - 1);\n" " printf(\"%-10s \", (d_type == DT_REG) ? \"regular\" :\n" " (d_type == DT_DIR) ? \"directory\" :\n" " (d_type == DT_FIFO) ? \"FIFO\" :\n" " (d_type == DT_SOCK) ? \"socket\" :\n" " (d_type == DT_LNK) ? \"symlink\" :\n" " (d_type == DT_BLK) ? \"block dev\" :\n" " (d_type == DT_CHR) ? \"char dev\" : \"???\");\n" " printf(\"%4d %10lld %s\\en\", d-Ed_reclen,\n" " (long long) d-Ed_off, d-Ed_name);\n" " bpos += d-Ed_reclen;\n" " }\n" " }\n" #. type: Plain text #: build/C/man2/getdents.2:281 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: Plain text #: build/C/man2/getdents.2:285 msgid "B(2), B(3)" msgstr "B(2), B(3)" #. type: TH #: build/C/man3/getdirentries.3:27 #, no-wrap msgid "GETDIRENTRIES" msgstr "GETDIRENTRIES" #. type: TH #: build/C/man3/getdirentries.3:27 #, no-wrap msgid "2007-07-26" msgstr "2007-07-26" #. type: TH #: build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:32 #: build/C/man3/scandir.3:62 #, no-wrap msgid "GNU" msgstr "GNU" #. type: Plain text #: build/C/man3/getdirentries.3:30 msgid "" "getdirentries - get directory entries in a filesystem-independent format" msgstr "" "getdirentries - ディレクトリのエントリをファイルシステムに依存しない形式で取" "得する" #. type: Plain text #: build/C/man3/getdirentries.3:35 msgid "" "BIB<, char *>IB<, size_t >I B<, " "off_t *>IB<);>" msgstr "" "BIB<, char *>IB<, size_t >I B<, " "off_t *>IB<);>" #. type: Plain text #: build/C/man3/getdirentries.3:43 msgid "B(): _BSD_SOURCE || _SVID_SOURCE" msgstr "B(): _BSD_SOURCE || _SVID_SOURCE" #. type: Plain text #: build/C/man3/getdirentries.3:56 msgid "" "Read directory entries from the directory specified by I into I. " "At most I are read. Reading starts at offset I<*basep>, and " "I<*basep> is updated with the new position after reading." msgstr "" "I で指定されたディレクトリからエントリを読み、 I に格納する。最大で " "I が読み込まれる。読み込みはオフセット I<*basep> から開始され、読み込" "み終了時には I<*basep> は新しい位置に更新される。" #. type: Plain text #: build/C/man3/getdirentries.3:62 msgid "" "B() returns the number of bytes read or zero when at the end " "of the directory. If an error occurs, -1 is returned, and I is set " "appropriately." msgstr "" "B() は読み込んだバイト数を返すか、ディレクトリの最後にきた場" "合は 0 を返す。 エラーが起こったら -1 を返し、 I をエラーに対応する値" "にセットする。" #. type: Plain text #: build/C/man3/getdirentries.3:64 msgid "See the Linux library source code for details." msgstr "詳細は Linux のライブラリソースコードを読んでほしい。" #. type: Plain text #: build/C/man3/getdirentries.3:72 msgid "" "Not in POSIX.1-2001. Present on the BSDs, and a few other systems. Use " "B(3) and B(3) instead." msgstr "" "POSIX.1-2001 にはない。 BSD に存在し、他にもいくつかのシステムにもある。 代わ" "りに B(3) と B(3) を使用すること。" #. type: Plain text #: build/C/man3/getdirentries.3:75 msgid "B(2), B(2)" msgstr "B(2), B(2)" #. type: TH #: build/C/man3/opendir.3:32 #, no-wrap msgid "OPENDIR" msgstr "OPENDIR" #. type: TH #: build/C/man3/opendir.3:32 #, no-wrap msgid "2010-06-20" msgstr "2010-06-20" #. type: Plain text #: build/C/man3/opendir.3:35 msgid "opendir, fdopendir - open a directory" msgstr "opendir, fdopendir - ディレクトリをオープンする" #. type: Plain text #: build/C/man3/opendir.3:43 #, no-wrap msgid "" "BIB<);>\n" "BIB<);>\n" msgstr "" "BIB<);>\n" "BIB<);>\n" #. type: Plain text #: build/C/man3/opendir.3:51 msgid "B():" msgstr "B():" #. type: TP #: build/C/man3/opendir.3:54 #, no-wrap msgid "Since glibc 2.10:" msgstr "glibc 2.10 以降:" #. type: Plain text #: build/C/man3/opendir.3:57 msgid "_XOPEN_SOURCE\\ E=\\ 700 || _POSIX_C_SOURCE\\ E=\\ 200809L" msgstr "_XOPEN_SOURCE\\ E=\\ 700 || _POSIX_C_SOURCE\\ E=\\ 200809L" #. type: TP #: build/C/man3/opendir.3:57 #, no-wrap msgid "Before glibc 2.10:" msgstr "glibc 2.10 より前:" #. type: Plain text #: build/C/man3/opendir.3:60 msgid "_GNU_SOURCE" msgstr "_GNU_SOURCE" #. type: Plain text #: build/C/man3/opendir.3:69 msgid "" "The B() function opens a directory stream corresponding to the " "directory I, and returns a pointer to the directory stream. The " "stream is positioned at the first entry in the directory." msgstr "" "B() 関数はディレクトリ I に対応する ディレクトリストリームを" "オープンし、そのストリームへのポインタを返す。 ストリームの位置はディレクトリ" "の先頭のエントリに設定される。" #. type: Plain text #: build/C/man3/opendir.3:83 msgid "" "The B() function is like B(), but returns a directory " "stream for the directory referred to by the open file descriptor I. " "After a successful call to B(), I is used internally by the " "implementation, and should not otherwise be used by the application." msgstr "" "B() 関数は B() と同様だが、オープン済みのファイルディス" "クリプタ I により参照されるディレクトリに対する ディレクトリストリームを" "返す。 B() の呼び出しが成功した後は、 I は実装の内部で使用さ" "れる。アプリケーションは I を他の場面で使用すべきではない。" #. type: Plain text #: build/C/man3/opendir.3:92 msgid "" "The B() and B() functions return a pointer to the " "directory stream. On error, NULL is returned, and I is set " "appropriately." msgstr "" "関数 B() と B() はディレクトリストリームへのポインタを" "返す。 エラーの場合は、NULL が返されて、 I が適切に設定される。" #. type: TP #: build/C/man3/opendir.3:93 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/opendir.3:96 msgid "Permission denied." msgstr "アクセス権限がない。" #. type: Plain text #: build/C/man3/opendir.3:100 msgid "I is not a valid file descriptor opened for reading." msgstr "" "I が読み出し用にオープンされた、有効なファイルディスクリプタではない。" #. type: TP #: build/C/man3/opendir.3:100 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/opendir.3:103 msgid "Too many file descriptors in use by process." msgstr "プロセスが使用中のファイルディスクリプタが多すぎる。" #. type: TP #: build/C/man3/opendir.3:103 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/opendir.3:106 msgid "Too many files are currently open in the system." msgstr "システムでオープンされているファイルが多すぎる。" #. type: Plain text #: build/C/man3/opendir.3:109 msgid "Directory does not exist, or I is an empty string." msgstr "ディレクトリが存在しないか、または I が空文字列である。" #. type: TP #: build/C/man3/opendir.3:109 build/C/man3/scandir.3:204 #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: build/C/man3/opendir.3:112 build/C/man3/scandir.3:207 msgid "Insufficient memory to complete the operation." msgstr "操作を完了するのに十分なメモリがない。" #. type: Plain text #: build/C/man3/opendir.3:115 msgid "I is not a directory." msgstr "I はディレクトリではない。" #. type: SH #: build/C/man3/opendir.3:115 build/C/man3/scandir.3:223 #, no-wrap msgid "VERSIONS" msgstr "バージョン" #. type: Plain text #: build/C/man3/opendir.3:118 msgid "B() is available in glibc since version 2.4." msgstr "B() は glibc 2.4 以降で利用可能である。" #. type: Plain text #: build/C/man3/opendir.3:123 msgid "" "B() is present on SVr4, 4.3BSD, and specified in POSIX.1-2001. " "B() is specified in POSIX.1-2008." msgstr "" "B() は SVr4 と 4.3BSD に存在し、 POSIX.1-2001 で規定されている。 " "B() は POSIX.1-2008 で規定されている。" #. type: Plain text #: build/C/man3/opendir.3:126 msgid "" "The underlying file descriptor of the directory stream can be obtained using " "B(3)." msgstr "" "ディレクトリストリームに対応するファイルディスクリプタは B(3) を使用" "して得ることができる。" #. type: Plain text #: build/C/man3/opendir.3:140 msgid "" "The B() function sets the close-on-exec flag for the file " "descriptor underlying the I. The B() function leaves the " "setting of the close-on-exec flag unchanged for the file descriptor, I. " "POSIX.1-200x leaves it unspecified whether a successful call to B" "() will set the close-on-exec flag for the file descriptor, I." msgstr "" "B() 関数は、 I の背後にあるファイルディスクリプタの close-" "on-exec フラグを設定する。 B() 関数は、ファイルディスクリプタの " "close-on-exec フラグの設定を変更しない。 B() の呼び出しが成功した" "際に、ファイルディスクリプタ I の close-on-exec を設定するかどうかは、 " "POSIX.1-200x では規定されていない。" #. type: Plain text #: build/C/man3/opendir.3:149 msgid "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3), B(3)" msgstr "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3), B(3)" #. type: TH #: build/C/man2/readdir.2:30 build/C/man3/readdir.3:36 #, no-wrap msgid "READDIR" msgstr "READDIR" #. type: TH #: build/C/man2/readdir.2:30 build/C/man3/readdir.3:36 #, no-wrap msgid "2013-06-21" msgstr "2013-06-21" #. type: Plain text #: build/C/man2/readdir.2:33 msgid "readdir - read directory entry" msgstr "readdir - ディレクトリ・エントリを読み込む" #. type: Plain text #: build/C/man2/readdir.2:38 #, no-wrap msgid "" "BIB<, struct old_linux_dirent *>IB<,>\n" "B< unsigned int >IB<);>\n" msgstr "" "BIB<, struct old_linux_dirent *>IB<,>\n" "B< unsigned int >IB<);>\n" #. type: Plain text #: build/C/man2/readdir.2:50 msgid "" "This is not the function you are interested in. Look at B(3) for " "the POSIX conforming C library interface. This page documents the bare " "kernel system call interface, which is superseded by B(2)." msgstr "" "これはあなたの興味をもっている関数ではない。 POSIX 準拠の C ライブラリ・イン" "ターフェースについては B(3) を見ること。 このページは裸のカーネルの" "システムコール・インターフェースについて 記述しているが、このインターフェース" "は B(2) によって取って代わられた。" #. type: Plain text #: build/C/man2/readdir.2:64 msgid "" "B() reads one I structure from the directory " "referred to by the file descriptor I into the buffer pointed to by " "I. The argument I is ignored; at most one I " "structure is read." msgstr "" "B() は、ファイルディスクリプタ I が参照しているディレクトリか" "ら I 構造体を読み込み、 I で指されたバッファに格納す" "る。 I 引き数は(ほとんどの I 構造体の読み込みにおい" "て)無視される" #. type: Plain text #: build/C/man2/readdir.2:68 msgid "The I structure is declared as follows:" msgstr "I 構造体は以下のように宣言される:" #. type: Plain text #: build/C/man2/readdir.2:77 #, no-wrap msgid "" "struct old_linux_dirent {\n" " long d_ino; /* inode number */\n" " off_t d_off; /* offset to this I */\n" " unsigned short d_reclen; /* length of this I */\n" " char d_name[NAME_MAX+1]; /* filename (null-terminated) */\n" "}\n" msgstr "" "struct old_linux_dirent {\n" " long d_ino; /* inode number */\n" " off_t d_off; /* offset to this I */\n" " unsigned short d_reclen; /* length of this I */\n" " char d_name[NAME_MAX+1]; /* filename (null-terminated) */\n" "}\n" #. type: Plain text #: build/C/man2/readdir.2:91 msgid "" "I is an inode number. I is the distance from the start of the " "directory to this I. I is the size of " "I, not counting the terminating null byte (\\(aq\\e0\\(aq). " "I is a null-terminated filename." msgstr "" "I は inode 番号である。 I はディレクトリの最初からこの " "I まで距離である。 I は I の大きさで、終" "端のヌルバイト (\\(aq\\e0\\(aq) を含まない。 I はヌルバイトで終わる" "ファイル名である。" #. type: Plain text #: build/C/man2/readdir.2:97 msgid "" "On success, 1 is returned. On end of directory, 0 is returned. On error, " "-1 is returned, and I is set appropriately." msgstr "" "成功した場合は、1 が返される。 ディレクトリの最後では 0 が返される。 エラーの" "場合は -1 が返され、 I が適切に設定される。" #. type: Plain text #: build/C/man2/readdir.2:116 msgid "This system call is Linux-specific." msgstr "このシステム・コールは Linux 特有である。" #. type: Plain text #: build/C/man2/readdir.2:125 msgid "" "Glibc does not provide a wrapper for this system call; call it using " "B(2). You will need to define the I structure " "yourself. However, probably you should use B(3) instead." msgstr "" "glibc はこのシステムコールに対するラッパー関数を提供していない。 B" "(2) を使って呼び出すこと。 I 構造体を自分自身で定義する必" "要がある。しかし、たいていはこのシステムコールではなく B(3) を使うべ" "き場面のことが多い。" #. type: Plain text #: build/C/man2/readdir.2:127 msgid "This system call does not exist on x86-64." msgstr "このシステムコールは x86-64 では存在しない。" #. type: Plain text #: build/C/man2/readdir.2:130 msgid "B(2), B(3)" msgstr "B(2), B(3)" #. type: Plain text #: build/C/man3/readdir.3:39 msgid "readdir, readdir_r - read a directory" msgstr "readdir, readdir_r - ディレクトリを読み込む" #. type: Plain text #: build/C/man3/readdir.3:44 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/readdir.3:47 #, no-wrap msgid "BIB<, struct dirent *>IB<, struct dirent **>IB<);>\n" msgstr "BIB<, struct dirent *>IB<, struct dirent **>IB<);>\n" #. type: Plain text #: build/C/man3/readdir.3:56 msgid "B():" msgstr "B():" #. type: Plain text #: build/C/man3/readdir.3:59 msgid "" "_POSIX_C_SOURCE\\ E=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE " "|| _POSIX_SOURCE" msgstr "" "_POSIX_C_SOURCE\\ E=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE " "|| _POSIX_SOURCE" #. type: Plain text #: build/C/man3/readdir.3:69 msgid "" "The B() function returns a pointer to a I structure " "representing the next directory entry in the directory stream pointed to by " "I. It returns NULL on reaching the end of the directory stream or if " "an error occurred." msgstr "" "B() 関数は、I が指すディレクトリストリームの中で、 次のディレ" "クトリエントリを表す I 構造体へのポインタを返す。 ディレクトリスト" "リームの末尾に達した場合や、 エラーが発生した場合は、 NULL を返す。" #. type: Plain text #: build/C/man3/readdir.3:73 msgid "On Linux, the I structure is defined as follows:" msgstr "Linux では I 構造体は以下のように定義されている。" #. type: Plain text #: build/C/man3/readdir.3:84 #, no-wrap msgid "" "struct dirent {\n" " ino_t d_ino; /* inode number */\n" " off_t d_off; /* not an offset; see NOTES */\n" " unsigned short d_reclen; /* length of this record */\n" " unsigned char d_type; /* type of file; not supported\n" " by all filesystem types */\n" " char d_name[256]; /* filename */\n" "};\n" msgstr "" "struct dirent {\n" " ino_t d_ino; /* inode 番号 */\n" " off_t d_off; /* オフセットではない; 注意を参照 */\n" " unsigned short d_reclen; /* このレコードの長さ */\n" " unsigned char d_type; /* ファイル種別。全ファイルシステム */\n" " でサポートされているわけではない */\n" " char d_name[256]; /* ファイル名 */\n" "};\n" #. type: Plain text #: build/C/man3/readdir.3:98 msgid "" "The only fields in the I structure that are mandated by POSIX.1 are: " "I[], of unspecified size, with at most B characters " "preceding the terminating null byte (\\(aq\\e0\\(aq); and (as an XSI " "extension) I. The other fields are unstandardized, and not present " "on all systems; see NOTES below for some further details." msgstr "" "I 構造体のフィールドで POSIX.1 で要求されているのは、 I[] と " "(XSI 拡張での) I だけである。 I[] はその大きさも規定されてお" "らず、 このフィールドには最大で B 個の文字と、それに続く終端の " "NULL バイト (\\(aq\\e0\\(aq)が格納される。 他のフィールドは非標準であり、全て" "のシステムに存在するわけではない。 詳細については、下記の「注意」を参照のこ" "と。" #. type: Plain text #: build/C/man3/readdir.3:104 msgid "" "The data returned by B() may be overwritten by subsequent calls to " "B() for the same directory stream." msgstr "" "B() によって返されるデータは、それ以降の同じストリームに対する " "B() の呼び出しによって上書きされる可能性がある。" #. type: Plain text #: build/C/man3/readdir.3:119 msgid "" "The B() function is a reentrant version of B(). It " "reads the next directory entry from the directory stream I, and " "returns it in the caller-allocated buffer pointed to by I. (See " "NOTES for information on allocating this buffer.) A pointer to the returned " "item is placed in I<*result>; if the end of the directory stream was " "encountered, then NULL is instead returned in I<*result>." msgstr "" "B() 関数は B() のリエントラント版である。 この関数は" "ディレクトリストリーム I から次のディレクトリエントリを読み込み、 " "I が指す呼び出し元が割り当てたバッファにそのエントリを格納して返す (こ" "のバッファの割り当てについては「注意」の節を参照のこと)。 返されるエントリへ" "のポインタが I<*result> に格納される。ディレクトリストリームの末尾に達した場" "合は、 NULL が I<*result> に格納される。" #. type: Plain text #: build/C/man3/readdir.3:134 msgid "" "On success, B() returns a pointer to a I structure. (This " "structure may be statically allocated; do not attempt to B(3) it.) " "If the end of the directory stream is reached, NULL is returned and I " "is not changed. If an error occurs, NULL is returned and I is set " "appropriately." msgstr "" "成功すると、 B() は I 構造体へのポインタを返す。 (この構造" "体は静的に割り当てられているかもしれない。 このポインタを B(3) しよう" "としないこと。) ディレクトリストリームの末尾に達した場合には、NULL が返さ" "れ、 I は変化しない。 エラーが発生した場合、NULL が返され、 I " "が適切に設定される。" #. type: Plain text #: build/C/man3/readdir.3:143 msgid "" "The B() function returns 0 on success. On error, it returns a " "positive error number (listed under ERRORS). If the end of the directory " "stream is reached, B() returns 0, and returns NULL in I<*result>." msgstr "" "成功すると、 B() 関数は 0 を返す。 エラーの場合、(「エラー」の節" "のリストに載っている) 正のエラー番号を返す。 ディレクトリストリームの末尾に達" "した場合、 B() は返り値として 0 を返し、 I<*result> に NULL を格" "納する。" #. type: Plain text #: build/C/man3/readdir.3:152 msgid "The B() function is not thread-safe." msgstr "B() 関数はスレッドセーフではない。" #. type: Plain text #: build/C/man3/readdir.3:156 msgid "The B() function is thread-safe." msgstr "B() 関数はスレッドセーフである。" #. type: Plain text #: build/C/man3/readdir.3:158 build/C/man3/rewinddir.3:60 msgid "SVr4, 4.3BSD, POSIX.1-2001." msgstr "SVr4, 4.3BSD, POSIX.1-2001." #. type: Plain text #: build/C/man3/readdir.3:174 msgid "" "Only the fields I and I are specified in POSIX.1-2001. The " "remaining fields are available on many, but not all systems. Under glibc, " "programs can check for the availability of the fields not defined in POSIX.1 " "by testing whether the macros B<_DIRENT_HAVE_D_NAMLEN>, " "B<_DIRENT_HAVE_D_RECLEN>, B<_DIRENT_HAVE_D_OFF>, or B<_DIRENT_HAVE_D_TYPE> " "are defined." msgstr "" "フィールド I と I だけが POSIX.1-2001 で規定されている。 残り" "のフィールドは多くのシステムに存在するが、全てのシステムに 存在するわけではな" "い。 glibc では、プログラムが POSIX.1 で定義されていないフィールドが 利用でき" "るかをチェックすることができる。 チェックするには、マクロ " "B<_DIRENT_HAVE_D_NAMLEN>, B<_DIRENT_HAVE_D_RECLEN>, B<_DIRENT_HAVE_D_OFF>, " "B<_DIRENT_HAVE_D_TYPE> が定義されているかをテストすればよい。" #. https://lwn.net/Articles/544298/ #. type: Plain text #: build/C/man3/readdir.3:187 msgid "" "The value returned in I is the same as would be returned by calling " "B(3) at the current position in the directory stream. Be aware " "that despite its type and name, the I field is seldom any kind of " "directory offset on modern filesystems. Applications should treat this " "field as an opaque value, making no assumptions about its contents; see also " "B(3)." msgstr "" "I で返される値は B(3) が返す値と同じで、ディレクトリストリー" "ム内の現在の位置を示す。\n" "フィールドの型や名前はこうなっていますが、最近のファイルシステムでは " "I フィールドが何らかのディレクトリオフセットであることはめったいにな" "い。アプリケーションプログラムでは、必ずこの値を内容を意識せず単なる値として" "扱うべきであり、その内容について前提を持つべきではない。" #. type: Plain text #: build/C/man3/readdir.3:200 msgid "" "Other than Linux, the I field is available mainly only on BSD " "systems. This field makes it possible to avoid the expense of calling " "B(2) if further actions depend on the type of the file. If the " "B<_BSD_SOURCE> feature test macro is defined, then glibc defines the " "following macro constants for the value returned in I:" msgstr "" "I フィールドは、Linux 以外では、 主に BSD 系のシステムにだけ存在す" "る。 このフィールドを使うと、 その後の動作がファイルの種別により決まる場合" "に、 B(2) を呼び出すコストを避けることができる。 機能検査マクロ " "B<_BSD_SOURCE> が定義された場合、glibc は I で返される値として以下の" "マクロ定数を定義する。" #. type: Plain text #: build/C/man3/readdir.3:231 msgid "" "If the file type could not be determined, the value B is " "returned in I." msgstr "" "ファイル種別を決定できなかった場合には、 I に B が入る。" #. type: Plain text #: build/C/man3/readdir.3:250 msgid "" "Since POSIX.1 does not specify the size of the I field, and other " "nonstandard fields may precede that field within the I structure, " "portable applications that use B() should allocate the buffer " "whose address is passed in I as follows:" msgstr "" "POSIX.1 では I フィールドのサイズは規定されておらず、 I 構造" "体の I の後ろに他の非標準のフィールドがあるかもしれないので、 移植性" "が必要なアプリケーションで B() を使う場合は I に渡すバッ" "ファを次のようにして割り当てるべきである。" #. type: Plain text #: build/C/man3/readdir.3:258 #, no-wrap msgid "" "name_max = pathconf(dirpath, _PC_NAME_MAX);\n" "if (name_max == -1) /* Limit not defined, or error */\n" " name_max = 255; /* Take a guess */\n" "len = offsetof(struct dirent, d_name) + name_max + 1;\n" "entryp = malloc(len);\n" msgstr "" "name_max = pathconf(dirpath, _PC_NAME_MAX);\n" "if (name_max == -1) /* 上限が定義されていない、またはエラー */\n" " name_max = 255; /* 適当な値を入れる */\n" "len = offsetof(struct dirent, d_name) + name_max + 1;\n" "entryp = malloc(len);\n" #. type: Plain text #: build/C/man3/readdir.3:265 msgid "" "(POSIX.1 requires that I is the last field in a I.)" msgstr "" "(POSIX.1 では I の最後のフィールドが I であることを要" "求している。)" #. type: Plain text #: build/C/man3/readdir.3:277 msgid "" "B(2), B(2), B(3), B(3), B(3), " "B(3), B(3), B(3), B(3), B" "(3), B(3)" msgstr "" "B(2), B(2), B(3), B(3), B(3), " "B(3), B(3), B(3), B(3), B" "(3), B(3)" #. type: TH #: build/C/man3/rewinddir.3:31 #, no-wrap msgid "REWINDDIR" msgstr "REWINDDIR" #. type: TH #: build/C/man3/rewinddir.3:31 build/C/man3/telldir.3:30 #, no-wrap msgid "2013-09-02" msgstr "2013-09-02" #. type: Plain text #: build/C/man3/rewinddir.3:34 msgid "rewinddir - reset directory stream" msgstr "rewinddir - ディレクトリストリームの初期化" #. type: Plain text #: build/C/man3/rewinddir.3:41 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/rewinddir.3:49 msgid "" "The B() function resets the position of the directory stream " "I to the beginning of the directory." msgstr "" "B() 関数は、ディレクトリストリーム I の位置を ディレクトリ" "の先頭に初期化する。" #. type: Plain text #: build/C/man3/rewinddir.3:53 msgid "The B() function returns no value." msgstr "B() 関数は、値を返さない。" #. type: Plain text #: build/C/man3/rewinddir.3:58 msgid "The B() function is thread-safe." msgstr "B() 関数はスレッドセーフである。" #. type: Plain text #: build/C/man3/rewinddir.3:67 msgid "" "B(3), B(3), B(3), B(3), B(3), " "B(3)" msgstr "" "B(3), B(3), B(3), B(3), B(3), " "B(3)" #. type: TH #: build/C/man3/scandir.3:62 #, no-wrap msgid "SCANDIR" msgstr "SCANDIR" #. type: TH #: build/C/man3/scandir.3:62 #, no-wrap msgid "2014-02-21" msgstr "2014-02-21" #. type: Plain text #: build/C/man3/scandir.3:66 msgid "" "scandir, scandirat, alphasort, versionsort - scan a directory for matching " "entries" msgstr "scandir, scandirat, alphasort, versionsort - ディレクトリを走査する" #. type: Plain text #: build/C/man3/scandir.3:71 #, no-wrap msgid "BIB<, struct dirent ***>IB<,>\n" msgstr "BIB<, struct dirent ***>IB<,>\n" #. type: Plain text #: build/C/man3/scandir.3:74 build/C/man3/scandir.3:90 #, no-wrap msgid "" "BIB<)(const struct dirent *),>\n" "BIB<)(const struct dirent **, const struct dirent **));>\n" msgstr "" "BIB<)(const struct dirent *),>\n" "BIB<)(const struct dirent **, const struct dirent **));>\n" #. type: Plain text #: build/C/man3/scandir.3:77 #, no-wrap msgid "BIB<, const void *>IB<);>\n" msgstr "BIB<, const void *>IB<);>\n" #. type: Plain text #: build/C/man3/scandir.3:79 #, no-wrap msgid "BIB<, const void *>IB<);>\n" msgstr "BIB<, const void *>IB<);>\n" #. type: Plain text #: build/C/man3/scandir.3:82 #, no-wrap msgid "" "B<#include Efcntl.hE> /* Definition of AT_* constants */\n" "B<#include Edirent.hE>\n" msgstr "" "B<#include Efcntl.hE> /* AT_* 定数の定義 */\n" "B<#include Edirent.hE>\n" #. type: Plain text #: build/C/man3/scandir.3:86 msgid "" "BIB<, const char *>IB<,> BIB<,>" msgstr "" "BIB<, const char *>IB<,> BIB<,>" #. type: Plain text #: build/C/man3/scandir.3:100 msgid "B(), B():" msgstr "B(), B():" #. type: Plain text #: build/C/man3/scandir.3:115 msgid "B(): _GNU_SOURCE" msgstr "B(): _GNU_SOURCE" #. type: Plain text #: build/C/man3/scandir.3:118 msgid "B(): _GNU_SOURCE" msgstr "B(): _GNU_SOURCE" #. type: Plain text #: build/C/man3/scandir.3:133 msgid "" "The B() function scans the directory I, calling I() " "on each directory entry. Entries for which I() returns nonzero are " "stored in strings allocated via B(3), sorted using B(3) with " "the comparison function I(), and collected in array I " "which is allocated via B(3). If I is NULL, all entries are " "selected." msgstr "" "関数 B() はディレクトリ I を走査し、 ディレクトリの各エントリ" "を引き数として B() を呼び出す。 B() が 0 以外の値を返すエン" "トリは B(3) によって 確保された文字列に保存され、比較関数 B" "() を用いて B(3) によりソートされ、 B(3) により確保された配" "列 I にまとめられる。 I が NULL ならば、すべてのエントリが" "選択される。" #. type: Plain text #: build/C/man3/scandir.3:145 msgid "" "The B() and B() functions can be used as the " "comparison function I(). The former sorts directory entries using " "B(3), the latter using B(3) on the strings I<(*a)-" "Ed_name> and I<(*b)-Ed_name>." msgstr "" "比較関数 I() には B() 関数と B() 関数を使" "うことができる。 B() は B(3) を用いてディレクトリエント" "リをソートし、 B() は文字列 I<(*a)-Ed_name> と I<(*b)-" "Ed_name> に対して B(3) を用いる。" #. type: SS #: build/C/man3/scandir.3:145 #, no-wrap msgid "scandirat()" msgstr "scandirat()" #. type: Plain text #: build/C/man3/scandir.3:151 msgid "" "The B() function operates in exactly the same way as B" "(), except for the differences described here." msgstr "" "B() 関数は B() と全く同様の動作をする。差分についてはここ" "で説明する。" #. type: Plain text #: build/C/man3/scandir.3:161 msgid "" "If the pathname given in I is relative, then it is interpreted " "relative to the directory referred to by the file descriptor I " "(rather than relative to the current working directory of the calling " "process, as is done by B() for a relative pathname)." msgstr "" "I で指定されたパス名が相対パスの場合、ファイルディスクリプタ I " "が参照するディレクトリからの相対パスと解釈される (これに対して、B() " "の場合は、相対パス名は、呼び出したプロセスのカレントワーキングディレクトリか" "らの相対パスと解釈される)。" #. type: Plain text #: build/C/man3/scandir.3:173 msgid "" "If I is relative and I is the special value B, then " "I is interpreted relative to the current working directory of the " "calling process (like B())." msgstr "" "I が相対パスで I が特別な値 B の場合、 I は " "(B() と同様に) 呼び出したプロセスのカレントワーキングディレクトリか" "らの相対パスと解釈される。" #. type: Plain text #: build/C/man3/scandir.3:179 msgid "If I is absolute, then I is ignored." msgstr "I が絶対パスの場合、I は無視される。" #. type: Plain text #: build/C/man3/scandir.3:184 msgid "See B(2) for an explanation of the need for B()." msgstr "B() が必要な理由については B(2) を参照すること。" #. type: Plain text #: build/C/man3/scandir.3:192 msgid "" "The B() function returns the number of directory entries " "selected. On error, -1 is returned, with I set to indicate the cause " "of the error." msgstr "" "B() 関数は、選択されたディレクトリのエントリ数を返す。 エラーの場" "合、 -1 を返し、 I にエラーの原因を示す値を設定する。" #. type: Plain text #: build/C/man3/scandir.3:200 msgid "" "The B() and B() functions return an integer less " "than, equal to, or greater than zero if the first argument is considered to " "be respectively less than, equal to, or greater than the second." msgstr "" "関数 B() と B() は 1 番目の引き数が 2 番目の引き数" "に対して、 [小さい/等しい/大きい] かに応じて、0 より [小さい/等しい/大きい] " "値を返す。" #. type: Plain text #: build/C/man3/scandir.3:204 msgid "The path in I does not exist." msgstr "I で指定されたパスが存在しない。" #. type: Plain text #: build/C/man3/scandir.3:210 msgid "The path in I is not a directory." msgstr "I で指定されたパスがディレクトリではない。" #. type: Plain text #: build/C/man3/scandir.3:213 msgid "The following additional errors can occur for B():" msgstr "B() では追加で以下のエラーも発生する:" #. type: Plain text #: build/C/man3/scandir.3:217 msgid "I is not a valid file descriptor." msgstr "I が有効なファイルディスクリプタではない。" #. type: Plain text #: build/C/man3/scandir.3:223 msgid "" "I is a relative path and I is a file descriptor referring to a " "file other than a directory." msgstr "" "I が相対パスで、I がディレクトリ以外のファイルを参照している\n" "ファイルディスクリプタである。" #. type: Plain text #: build/C/man3/scandir.3:226 msgid "B() was added to glibc in version 2.1." msgstr "B() は、glibc バージョン 2.1 で追加された。" #. type: Plain text #: build/C/man3/scandir.3:229 msgid "B() was added to glibc in version 2.15." msgstr "B() は glibc バージョン 2.15 で追加された。" #. type: Plain text #: build/C/man3/scandir.3:233 msgid "B(), B(): 4.3BSD, POSIX.1-2008." msgstr "B(), B(): 4.3BSD, POSIX.1-2008." #. .LP #. The functions #. .BR scandir () #. and #. .BR alphasort () #. are from 4.3BSD, and have been available under Linux since libc4. #. Libc4 and libc5 use the more precise prototype #. .sp #. .nf #. int alphasort(const struct dirent ** a, #. const struct dirent **b); #. .fi #. .sp #. but glibc 2.0 returns to the imprecise BSD prototype. #. type: Plain text #: build/C/man3/scandir.3:252 msgid "B() and B() are GNU extensions." msgstr "B() と B() は GNU 拡張である。" #. type: Plain text #: build/C/man3/scandir.3:259 msgid "" "Since glibc 2.1, B() calls B(3); earlier it used " "B(3)." msgstr "" "glibc 2.1 以降では B() は B(3) を呼び出す。 " "B() は以前は B(3) を使っていた。" #. type: Plain text #: build/C/man3/scandir.3:264 #, no-wrap msgid "" "#define _SVID_SOURCE\n" "/* print files in current directory in reverse order */\n" "#include Edirent.hE\n" msgstr "" "#define _SVID_SOURCE\n" "/* カレントディレクトリのファイルを逆順に出力する */\n" "#include Edirent.hE\n" #. type: Plain text #: build/C/man3/scandir.3:270 #, no-wrap msgid "" "int\n" "main(void)\n" "{\n" " struct dirent **namelist;\n" " int n;\n" msgstr "" "int\n" "main(void)\n" "{\n" " struct dirent **namelist;\n" " int n;\n" #. type: Plain text #: build/C/man3/scandir.3:282 #, no-wrap msgid "" " n = scandir(\".\", &namelist, NULL, alphasort);\n" " if (n E 0)\n" " perror(\"scandir\");\n" " else {\n" " while (n--) {\n" " printf(\"%s\\en\", namelist[n]-Ed_name);\n" " free(namelist[n]);\n" " }\n" " free(namelist);\n" " }\n" "}\n" msgstr "" " n = scandir(\".\", &namelist, NULL, alphasort);\n" " if (n E 0)\n" " perror(\"scandir\");\n" " else {\n" " while (n--) {\n" " printf(\"%s\\en\", namelist[n]-Ed_name);\n" " free(namelist[n]);\n" " }\n" " free(namelist);\n" " }\n" "}\n" #. type: Plain text #: build/C/man3/scandir.3:294 msgid "" "B(3), B(3), B(3), B(3), B" "(3), B(3), B(3), B(3), B(3), B" "(3)" msgstr "" "B(3), B(3), B(3), B(3), B" "(3), B(3), B(3), B(3), B(3), B" "(3)" #. type: TH #: build/C/man3/seekdir.3:31 #, no-wrap msgid "SEEKDIR" msgstr "SEEKDIR" #. type: TH #: build/C/man3/seekdir.3:31 #, no-wrap msgid "2013-09-09" msgstr "2013-09-09" #. type: Plain text #: build/C/man3/seekdir.3:35 msgid "" "seekdir - set the position of the next readdir() call in the directory " "stream." msgstr "" "seekdir - 次の readdir() 呼び出しのために、ディレクトリストリーム中の位置を " "設定する" #. type: Plain text #: build/C/man3/seekdir.3:40 #, no-wrap msgid "BIB<, long >IB<);>\n" msgstr "BIB<, long >IB<);>\n" #. type: Plain text #: build/C/man3/seekdir.3:49 msgid "B(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE" msgstr "B(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE" #. type: Plain text #: build/C/man3/seekdir.3:60 msgid "" "The B() function sets the location in the directory stream from " "which the next B(2) call will start. The I argument should " "be a value returned by a previous call to B(3)." msgstr "" "B() 関数は、次の B(3) 呼び出しの開始位置である、 ディレク" "トリストリームの中での位置を設定する。 I 引き数には、それ以前の " "B(3) の呼び出しで返された値を渡すべきである。" #. type: Plain text #: build/C/man3/seekdir.3:64 msgid "The B() function returns no value." msgstr "B() 関数は、値を返さない。" #. type: Plain text #: build/C/man3/seekdir.3:69 msgid "The B() function is thread-safe." msgstr "B() 関数はスレッドセーフである。" #. type: Plain text #: build/C/man3/seekdir.3:71 build/C/man3/telldir.3:71 msgid "4.3BSD, POSIX.1-2001." msgstr "4.3BSD, POSIX.1-2001." #. type: Plain text #: build/C/man3/seekdir.3:83 msgid "" "In glibc up to version 2.1.1, the type of the I argument was I. " "POSIX.1-2001 specifies I, and this is the type used since glibc " "2.1.2. See B(3) for information on why you should be careful in " "making any assumptions about the value in this argument." msgstr "" "バージョン 2.1.1 以前の glibc では、 I 引き数の型は I であった。 " "POSIX.1-2001 では I と規定されており、glibc 2.1.2 以降では I に" "なっている。この引き数の値に前提を置く際には気を付けないといけない理由につい" "ては B(3) を参照のこと。" #. type: Plain text #: build/C/man3/seekdir.3:91 msgid "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3)" msgstr "" "B(2), B(3), B(3), B(3), B(3), " "B(3), B(3)" #. type: TH #: build/C/man3/telldir.3:30 #, no-wrap msgid "TELLDIR" msgstr "TELLDIR" #. type: Plain text #: build/C/man3/telldir.3:33 msgid "telldir - return current location in directory stream" msgstr "telldir - ディレクトリストリーム中の現在位置を返す" #. type: Plain text #: build/C/man3/telldir.3:38 #, no-wrap msgid "BIB<);>\n" msgstr "BIB<);>\n" #. type: Plain text #: build/C/man3/telldir.3:47 msgid "B(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE" msgstr "B(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE" #. type: Plain text #: build/C/man3/telldir.3:52 msgid "" "The B() function returns the current location associated with the " "directory stream I." msgstr "" "B() 関数は、ディレクトリストリーム I に結びつけられた 現在位" "置を返す。" #. type: Plain text #: build/C/man3/telldir.3:60 msgid "" "On success, the B() function returns the current location in the " "directory stream. On error, -1 is returned, and I is set " "appropriately." msgstr "" "成功した場合、 B() 関数はディレクトリストリーム中の現在位置を返" "す。 エラーの場合、-1 が返されて、 I が適切に設定される。" #. type: Plain text #: build/C/man3/telldir.3:69 msgid "The B() function is thread-safe." msgstr "B() 関数はスレッドセーフである。" #. type: Plain text #: build/C/man3/telldir.3:79 msgid "" "In glibc up to version 2.1.1, the return type of B() was " "I. POSIX.1-2001 specifies I, and this is the type used since " "glibc 2.1.2." msgstr "" "バージョン 2.1.1 以前の glibc では、 B()9 の返り値の型は I で" "あった。 POSIX.1-2001 では I と規定されており、glibc 2.1.2 以降では " "I になっている。" #. https://lwn.net/Articles/544298/ #. type: Plain text #: build/C/man3/telldir.3:95 msgid "" "In early filesystems, the value returned by B() was a simple file " "offset within a directory. Modern filesystems use tree or hash structures, " "rather than flat tables, to represent directories. On such filesystems, the " "value returned by B() (and used internally by B(3)) is a " "\"cookie\" that is used by the implementation to derive a position within a " "directory. Application programs should treat this strictly as an opaque " "value, making I assumptions about its contents." msgstr "" "初期のファイルシステムでは、 B() が返す値は単なるディレクトリ内の" "ファイルオフセットであった。新しめのファイルシステムでは、ディレクトリを表現" "するのに、フラットなテーブルではなく、ツリーやハッシュ構造が使用されている。" "このようなファイルシステムでは、 B() が返す値 (および B(3) " "が内部で使用する値) は、ディレクトリ内での値を示すのにファイルシステム実装が" "使っている \"cookie\" となる。アプリケーションプログラムでは、必ずこの値を内" "容を意識せず単なる値として扱うべきであり、その内容について前提を持つべきでは" "「ない」。" #. type: Plain text #: build/C/man3/telldir.3:102 msgid "" "B(3), B(3), B(3), B(3), B" "(3), B(3)" msgstr "" "B(3), B(3), B(3), B(3), B" "(3), B(3)"