OSDN Git Service

LDP: Update POT and ja.po to LDP v3.79
[linuxjm/LDP_man-pages.git] / po4a / dirent / po / ja.po
1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5 #
6 msgid ""
7 msgstr ""
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2015-02-04 23:30+0900\n"
10 "PO-Revision-Date: 2015-01-25 07:16+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13 "Language: \n"
14 "MIME-Version: 1.0\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
17
18 #. type: TH
19 #: build/C/man3/closedir.3:31
20 #, no-wrap
21 msgid "CLOSEDIR"
22 msgstr "CLOSEDIR"
23
24 #. type: TH
25 #: build/C/man3/closedir.3:31
26 #, no-wrap
27 msgid "2008-09-23"
28 msgstr "2008-09-23"
29
30 #. type: TH
31 #: build/C/man3/closedir.3:31 build/C/man3/dirfd.3:25
32 #: build/C/man2/getdents.2:30 build/C/man3/getdirentries.3:27
33 #: build/C/man3/opendir.3:32 build/C/man2/readdir.2:30
34 #: build/C/man3/readdir.3:36 build/C/man3/rewinddir.3:31
35 #: build/C/man3/scandir.3:62 build/C/man3/seekdir.3:31
36 #: build/C/man3/telldir.3:30
37 #, no-wrap
38 msgid "Linux Programmer's Manual"
39 msgstr "Linux Programmer's Manual"
40
41 #. type: SH
42 #: build/C/man3/closedir.3:32 build/C/man3/dirfd.3:26
43 #: build/C/man2/getdents.2:31 build/C/man3/getdirentries.3:28
44 #: build/C/man3/opendir.3:33 build/C/man2/readdir.2:31
45 #: build/C/man3/readdir.3:37 build/C/man3/rewinddir.3:32
46 #: build/C/man3/scandir.3:63 build/C/man3/seekdir.3:32
47 #: build/C/man3/telldir.3:31
48 #, no-wrap
49 msgid "NAME"
50 msgstr "名前"
51
52 #. type: Plain text
53 #: build/C/man3/closedir.3:34
54 msgid "closedir - close a directory"
55 msgstr "closedir - ディレクトリをクローズする"
56
57 #. type: SH
58 #: build/C/man3/closedir.3:34 build/C/man3/dirfd.3:28
59 #: build/C/man2/getdents.2:33 build/C/man3/getdirentries.3:30
60 #: build/C/man3/opendir.3:35 build/C/man2/readdir.2:33
61 #: build/C/man3/readdir.3:39 build/C/man3/rewinddir.3:34
62 #: build/C/man3/scandir.3:66 build/C/man3/seekdir.3:35
63 #: build/C/man3/telldir.3:33
64 #, no-wrap
65 msgid "SYNOPSIS"
66 msgstr "書式"
67
68 #. type: Plain text
69 #: build/C/man3/closedir.3:37 build/C/man3/opendir.3:38
70 #: build/C/man3/rewinddir.3:37
71 #, no-wrap
72 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
73 msgstr "B<#include E<lt>sys/types.hE<gt>>\n"
74
75 #. type: Plain text
76 #: build/C/man3/closedir.3:39 build/C/man3/opendir.3:40
77 #: build/C/man3/readdir.3:42 build/C/man3/rewinddir.3:39
78 #: build/C/man3/scandir.3:69 build/C/man3/seekdir.3:38
79 #: build/C/man3/telldir.3:36
80 #, no-wrap
81 msgid "B<#include E<lt>dirent.hE<gt>>\n"
82 msgstr "B<#include E<lt>dirent.hE<gt>>\n"
83
84 #. type: Plain text
85 #: build/C/man3/closedir.3:41
86 #, no-wrap
87 msgid "B<int closedir(DIR *>I<dirp>B<);>\n"
88 msgstr "B<int closedir(DIR *>I<dirp>B<);>\n"
89
90 #. type: SH
91 #: build/C/man3/closedir.3:42 build/C/man3/dirfd.3:54
92 #: build/C/man2/getdents.2:41 build/C/man3/getdirentries.3:43
93 #: build/C/man3/opendir.3:63 build/C/man2/readdir.2:42
94 #: build/C/man3/readdir.3:61 build/C/man3/rewinddir.3:42
95 #: build/C/man3/scandir.3:118 build/C/man3/seekdir.3:49
96 #: build/C/man3/telldir.3:47
97 #, no-wrap
98 msgid "DESCRIPTION"
99 msgstr "説明"
100
101 #. type: Plain text
102 #: build/C/man3/closedir.3:55
103 msgid ""
104 "The B<closedir>()  function closes the directory stream associated with "
105 "I<dirp>.  A successful call to B<closedir>()  also closes the underlying "
106 "file descriptor associated with I<dirp>.  The directory stream descriptor "
107 "I<dirp> is not available after this call."
108 msgstr ""
109 "B<closedir>()  関数は I<dirp> に関連付けられた ディレクトリストリームをクロー"
110 "ズする。\n"
111 "B<closedir>()  の呼び出しが成功すると、 I<dirp> に関連付けられた\n"
112 "ファイルディスクリプターもクローズされる。\n"
113 "ディレクトリストリームディスクリプター (directory stream descriptor) I<dirp> "
114 "は、\n"
115 "この呼び出しの後では使用することができない。"
116
117 #. type: SH
118 #: build/C/man3/closedir.3:55 build/C/man3/dirfd.3:69
119 #: build/C/man2/getdents.2:142 build/C/man3/getdirentries.3:56
120 #: build/C/man3/opendir.3:83 build/C/man2/readdir.2:91
121 #: build/C/man3/readdir.3:119 build/C/man3/rewinddir.3:49
122 #: build/C/man3/scandir.3:184 build/C/man3/seekdir.3:60
123 #: build/C/man3/telldir.3:52
124 #, no-wrap
125 msgid "RETURN VALUE"
126 msgstr "返り値"
127
128 #. type: Plain text
129 #: build/C/man3/closedir.3:62
130 msgid ""
131 "The B<closedir>()  function returns 0 on success.  On error, -1 is returned, "
132 "and I<errno> is set appropriately."
133 msgstr ""
134 "B<closedir>()  関数は成功時に 0 を返す。 エラーの場合は、-1 が返されて、 "
135 "I<errno> が適切に設定される。"
136
137 #. type: SH
138 #: build/C/man3/closedir.3:62 build/C/man3/dirfd.3:74
139 #: build/C/man2/getdents.2:148 build/C/man3/getdirentries.3:62
140 #: build/C/man3/opendir.3:92 build/C/man2/readdir.2:97
141 #: build/C/man3/readdir.3:143 build/C/man3/scandir.3:200
142 #: build/C/man3/telldir.3:60
143 #, no-wrap
144 msgid "ERRORS"
145 msgstr "エラー"
146
147 #. type: TP
148 #: build/C/man3/closedir.3:63 build/C/man2/getdents.2:149
149 #: build/C/man3/opendir.3:96 build/C/man2/readdir.2:98
150 #: build/C/man3/readdir.3:144 build/C/man3/scandir.3:213
151 #: build/C/man3/telldir.3:61
152 #, no-wrap
153 msgid "B<EBADF>"
154 msgstr "B<EBADF>"
155
156 #. type: Plain text
157 #: build/C/man3/closedir.3:67 build/C/man3/readdir.3:147
158 #: build/C/man3/telldir.3:64
159 msgid "Invalid directory stream descriptor I<dirp>."
160 msgstr "ディレクトリストリームディスクリプター I<dirp> が無効である。"
161
162 #. type: SH
163 #: build/C/man3/closedir.3:67 build/C/man3/dirfd.3:92
164 #: build/C/man2/getdents.2:165 build/C/man3/getdirentries.3:69
165 #: build/C/man3/opendir.3:118 build/C/man2/readdir.2:114
166 #: build/C/man3/readdir.3:156 build/C/man3/rewinddir.3:58
167 #: build/C/man3/scandir.3:229 build/C/man3/seekdir.3:69
168 #: build/C/man3/telldir.3:69
169 #, no-wrap
170 msgid "CONFORMING TO"
171 msgstr "準拠"
172
173 #. type: Plain text
174 #: build/C/man3/closedir.3:69
175 msgid "SVr4, POSIX.1-2001, 4.3BSD."
176 msgstr "SVr4, POSIX.1-2001, 4.3BSD."
177
178 #. type: SH
179 #: build/C/man3/closedir.3:69 build/C/man3/dirfd.3:104
180 #: build/C/man2/getdents.2:282 build/C/man3/getdirentries.3:77
181 #: build/C/man3/opendir.3:140 build/C/man2/readdir.2:127
182 #: build/C/man3/readdir.3:265 build/C/man3/rewinddir.3:60
183 #: build/C/man3/scandir.3:283 build/C/man3/seekdir.3:83
184 #: build/C/man3/telldir.3:95
185 #, no-wrap
186 msgid "SEE ALSO"
187 msgstr "関連項目"
188
189 #. type: Plain text
190 #: build/C/man3/closedir.3:77
191 msgid ""
192 "B<close>(2), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), B<scandir>(3), "
193 "B<seekdir>(3), B<telldir>(3)"
194 msgstr ""
195 "B<close>(2), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), B<scandir>(3), "
196 "B<seekdir>(3), B<telldir>(3)"
197
198 #. type: SH
199 #: build/C/man3/closedir.3:77 build/C/man3/dirfd.3:113
200 #: build/C/man2/getdents.2:285 build/C/man3/getdirentries.3:80
201 #: build/C/man3/opendir.3:149 build/C/man2/readdir.2:130
202 #: build/C/man3/readdir.3:277 build/C/man3/rewinddir.3:67
203 #: build/C/man3/scandir.3:294 build/C/man3/seekdir.3:91
204 #: build/C/man3/telldir.3:102
205 #, no-wrap
206 msgid "COLOPHON"
207 msgstr "この文書について"
208
209 #. type: Plain text
210 #: build/C/man3/closedir.3:85 build/C/man3/dirfd.3:121
211 #: build/C/man2/getdents.2:293 build/C/man3/getdirentries.3:88
212 #: build/C/man3/opendir.3:157 build/C/man2/readdir.2:138
213 #: build/C/man3/readdir.3:285 build/C/man3/rewinddir.3:75
214 #: build/C/man3/scandir.3:302 build/C/man3/seekdir.3:99
215 #: build/C/man3/telldir.3:110
216 #, fuzzy
217 #| msgid ""
218 #| "This page is part of release 3.78 of the Linux I<man-pages> project.  A "
219 #| "description of the project, information about reporting bugs, and the "
220 #| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
221 #| "man-pages/."
222 msgid ""
223 "This page is part of release 3.79 of the Linux I<man-pages> project.  A "
224 "description of the project, information about reporting bugs, and the latest "
225 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
226 "pages/."
227 msgstr ""
228 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
229 "である。プロジェクトの説明とバグ報告に関する情報は\n"
230 "http://www.kernel.org/doc/man-pages/ に書かれている。"
231
232 #. type: TH
233 #: build/C/man3/dirfd.3:25
234 #, no-wrap
235 msgid "DIRFD"
236 msgstr "DIRFD"
237
238 #. type: TH
239 #: build/C/man3/dirfd.3:25
240 #, no-wrap
241 msgid "2013-07-05"
242 msgstr "2013-07-05"
243
244 #. type: TH
245 #: build/C/man3/dirfd.3:25 build/C/man2/getdents.2:30
246 #: build/C/man2/readdir.2:30
247 #, no-wrap
248 msgid "Linux"
249 msgstr "Linux"
250
251 #. type: Plain text
252 #: build/C/man3/dirfd.3:28
253 msgid "dirfd - get directory stream file descriptor"
254 msgstr "dirfd - ディレクトリストリームのファイルディスクリプターを取得する"
255
256 #. type: Plain text
257 #: build/C/man3/dirfd.3:30
258 msgid "B<#include E<lt>sys/types.hE<gt>>"
259 msgstr "B<#include E<lt>sys/types.hE<gt>>"
260
261 #. type: Plain text
262 #: build/C/man3/dirfd.3:32 build/C/man3/getdirentries.3:32
263 msgid "B<#include E<lt>dirent.hE<gt>>"
264 msgstr "B<#include E<lt>dirent.hE<gt>>"
265
266 #. type: Plain text
267 #: build/C/man3/dirfd.3:34
268 msgid "B<int dirfd(DIR *>I<dirp>B<);>"
269 msgstr "B<int dirfd(DIR *>I<dirp>B<);>"
270
271 #. type: Plain text
272 #: build/C/man3/dirfd.3:38 build/C/man3/getdirentries.3:39
273 #: build/C/man3/opendir.3:48 build/C/man3/readdir.3:52
274 #: build/C/man3/scandir.3:96 build/C/man3/seekdir.3:45
275 #: build/C/man3/telldir.3:43
276 msgid ""
277 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
278 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
279
280 #. type: Plain text
281 #: build/C/man3/dirfd.3:41
282 msgid "B<dirfd>():"
283 msgstr "B<dirfd>():"
284
285 #. type: Plain text
286 #: build/C/man3/dirfd.3:46 build/C/man3/scandir.3:105
287 msgid "_BSD_SOURCE || _SVID_SOURCE"
288 msgstr "_BSD_SOURCE || _SVID_SOURCE"
289
290 #. type: Plain text
291 #: build/C/man3/dirfd.3:48 build/C/man3/scandir.3:107
292 msgid "|| /* Since glibc 2.10: */"
293 msgstr "|| /* glibc 2.10 以降: */"
294
295 #. type: Plain text
296 #: build/C/man3/dirfd.3:50 build/C/man3/scandir.3:109
297 msgid "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
298 msgstr "(_POSIX_C_SOURCE\\ E<gt>=\\ 200809L || _XOPEN_SOURCE\\ E<gt>=\\ 700)"
299
300 #. type: Plain text
301 #: build/C/man3/dirfd.3:59
302 msgid ""
303 "The function B<dirfd>()  returns the file descriptor associated with the "
304 "directory stream I<dirp>."
305 msgstr ""
306 "関数 B<dirfd>()  はディレクトリストリーム I<dirp> に関連づけられたファイル"
307 "ディスクリプターを返す。"
308
309 #. type: Plain text
310 #: build/C/man3/dirfd.3:69
311 msgid ""
312 "This descriptor is the one used internally by the directory stream.  As a "
313 "result, it is useful only for functions which do not depend on or alter the "
314 "file position, such as B<fstat>(2)  and B<fchdir>(2).  It will be "
315 "automatically closed when B<closedir>(3)  is called."
316 msgstr ""
317 "このディスクリプターはディレクトリストリームが内部で使用するものである。 よっ"
318 "て、ファイルの位置に依存せず、かつその位置を変更しない関数 B<fstat>(2)  や "
319 "B<fchdir>(2)  などでしか役に立たない。 このディスクリプターは "
320 "B<closedir>(3)  が呼ばれたときに自動的にクローズされる。"
321
322 #. type: Plain text
323 #: build/C/man3/dirfd.3:74
324 msgid ""
325 "On success, a nonnegative file descriptor is returned.  On error, -1 is "
326 "returned, and I<errno> is set to indicate the cause of the error."
327 msgstr ""
328 "成功すると、負でない値のファイルディスクリプターが返される。 エラーの場合は "
329 "-1 が返され、 I<errno> にエラーの原因を示す値が設定される。"
330
331 #.  glibc 2.8
332 #. type: Plain text
333 #: build/C/man3/dirfd.3:79
334 msgid ""
335 "POSIX.1-2008 specifies two errors, neither of which is returned by the "
336 "current implementation."
337 msgstr ""
338 "POSIX.1-2008 では 2 つのエラーが規定されている。 現在の実装ではどちらのエラー"
339 "も返されない。"
340
341 #. type: TP
342 #: build/C/man3/dirfd.3:79 build/C/man2/getdents.2:156
343 #: build/C/man2/readdir.2:105
344 #, no-wrap
345 msgid "B<EINVAL>"
346 msgstr "B<EINVAL>"
347
348 #. type: Plain text
349 #: build/C/man3/dirfd.3:83
350 msgid "I<dirp> does not refer to a valid directory stream."
351 msgstr "I<dirp> が有効なディレクトリストリームを参照していない。"
352
353 #. type: TP
354 #: build/C/man3/dirfd.3:83
355 #, no-wrap
356 msgid "B<ENOTSUP>"
357 msgstr "B<ENOTSUP>"
358
359 #. type: Plain text
360 #: build/C/man3/dirfd.3:87
361 msgid ""
362 "The implementation does not support the association of a file descriptor "
363 "with a directory."
364 msgstr ""
365 "この実装では、ファイルディスクリプターのディレクトリとの関連付けが サポートさ"
366 "れていない。"
367
368 #. type: SH
369 #: build/C/man3/dirfd.3:87 build/C/man3/getdirentries.3:64
370 #: build/C/man3/readdir.3:147 build/C/man3/rewinddir.3:53
371 #: build/C/man3/seekdir.3:64 build/C/man3/telldir.3:64
372 #, no-wrap
373 msgid "ATTRIBUTES"
374 msgstr "属性"
375
376 #. type: SS
377 #: build/C/man3/dirfd.3:88 build/C/man3/getdirentries.3:65
378 #: build/C/man3/readdir.3:148 build/C/man3/rewinddir.3:54
379 #: build/C/man3/seekdir.3:65 build/C/man3/telldir.3:65
380 #, no-wrap
381 msgid "Multithreading (see pthreads(7))"
382 msgstr "マルチスレッディング (pthreads(7) 参照)"
383
384 #. type: Plain text
385 #: build/C/man3/dirfd.3:92
386 msgid "The B<dirfd>()  function is thread-safe."
387 msgstr "B<dirfd>() 関数はスレッドセーフである。"
388
389 #.  It is present in libc5 (since 5.1.2) and in glibc2.
390 #. type: Plain text
391 #: build/C/man3/dirfd.3:96
392 msgid ""
393 "POSIX.1-2008.  This function was a BSD extension, present in 4.3BSD-Reno, "
394 "not in 4.2BSD."
395 msgstr ""
396 "POSIX.1-2008.  この関数は BSD 拡張であった。 4.3BSD-Reno には存在するが、"
397 "4.2BSD には存在しない。"
398
399 #. type: SH
400 #: build/C/man3/dirfd.3:96 build/C/man2/getdents.2:168
401 #: build/C/man3/opendir.3:123 build/C/man2/readdir.2:116
402 #: build/C/man3/readdir.3:158 build/C/man3/scandir.3:252
403 #: build/C/man3/seekdir.3:71 build/C/man3/telldir.3:71
404 #, no-wrap
405 msgid "NOTES"
406 msgstr "注意"
407
408 #. type: Plain text
409 #: build/C/man3/dirfd.3:104
410 msgid ""
411 "The prototype for B<dirfd>()  is available only if B<_BSD_SOURCE> or "
412 "B<_SVID_SOURCE> is defined."
413 msgstr ""
414 "B<dirfd>()  のプロトタイプが使用可能なのは、 B<_BSD_SOURCE> または "
415 "B<_SVID_SOURCE> が定義されたときのみである。"
416
417 #. type: Plain text
418 #: build/C/man3/dirfd.3:113
419 msgid ""
420 "B<open>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
421 "B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
422 msgstr ""
423 "B<open>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
424 "B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
425
426 #. type: TH
427 #: build/C/man2/getdents.2:30
428 #, no-wrap
429 msgid "GETDENTS"
430 msgstr "GETDENTS"
431
432 #. type: TH
433 #: build/C/man2/getdents.2:30
434 #, no-wrap
435 msgid "2012-08-03"
436 msgstr "2012-08-03"
437
438 #. type: Plain text
439 #: build/C/man2/getdents.2:33
440 msgid "getdents - get directory entries"
441 msgstr "getdents - ディレクトリエントリーを取得する"
442
443 #. type: Plain text
444 #: build/C/man2/getdents.2:37
445 #, no-wrap
446 msgid ""
447 "B<int getdents(unsigned int >I<fd>B<, struct linux_dirent *>I<dirp>B<,>\n"
448 "B<             unsigned int >I<count>B<);>\n"
449 msgstr ""
450 "B<int getdents(unsigned int >I<fd>B<, struct linux_dirent *>I<dirp>B<,>\n"
451 "B<             unsigned int >I<count>B<);>\n"
452
453 #. type: Plain text
454 #: build/C/man2/getdents.2:41 build/C/man2/readdir.2:42
455 msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
456 msgstr ""
457 "I<注>: このシステムコールには glibc のラッパー関数は存在しない。「注意」の節"
458 "を参照。"
459
460 #. type: Plain text
461 #: build/C/man2/getdents.2:47
462 msgid ""
463 "This is not the function you are interested in.  Look at B<readdir>(3)  for "
464 "the POSIX conforming C library interface.  This page documents the bare "
465 "kernel system call interface."
466 msgstr ""
467 "これはあなたの関心を引くような関数ではない。 POSIX 準拠の C ライブラリイン"
468 "ターフェースについては B<readdir>(3)  を見ること。 このページは、カーネルシス"
469 "テムコールの生のインターフェースについて 記載したものである。"
470
471 #. type: Plain text
472 #: build/C/man2/getdents.2:60
473 msgid ""
474 "The system call B<getdents>()  reads several I<linux_dirent> structures from "
475 "the directory referred to by the open file descriptor I<fd> into the buffer "
476 "pointed to by I<dirp>.  The argument I<count> specifies the size of that "
477 "buffer."
478 msgstr ""
479 "B<getdents>()  システムコールは、オープン済みのファイルディスクリプター "
480 "I<fd> で参照されるディレクトリから I<linux_dirent> 構造体をいくつか読み出"
481 "し、 I<dirp> が指しているバッファーに格納する。 I<count> 引き数はそのバッ"
482 "ファーのサイズを示す。"
483
484 #. type: Plain text
485 #: build/C/man2/getdents.2:64
486 msgid "The I<linux_dirent> structure is declared as follows:"
487 msgstr "I<linux_dirent> 構造体は以下のように宣言されている:"
488
489 #. type: Plain text
490 #: build/C/man2/getdents.2:79
491 #, no-wrap
492 msgid ""
493 "struct linux_dirent {\n"
494 "    unsigned long  d_ino;     /* Inode number */\n"
495 "    unsigned long  d_off;     /* Offset to next I<linux_dirent> */\n"
496 "    unsigned short d_reclen;  /* Length of this I<linux_dirent> */\n"
497 "    char           d_name[];  /* Filename (null-terminated) */\n"
498 "                      /* length is actually (d_reclen - 2 -\n"
499 "                         offsetof(struct linux_dirent, d_name)) */\n"
500 "    /*\n"
501 "    char           pad;       // Zero padding byte\n"
502 "    char           d_type;    // File type (only since Linux\n"
503 "                              // 2.6.4); offset is (d_reclen - 1)\n"
504 "    */\n"
505 msgstr ""
506 "struct linux_dirent {\n"
507 "    unsigned long  d_ino;     /* Inode number */\n"
508 "    unsigned long  d_off;     /* Offset to next I<linux_dirent> */\n"
509 "    unsigned short d_reclen;  /* Length of this I<linux_dirent> */\n"
510 "    char           d_name[];  /* Filename (null-terminated) */\n"
511 "                      /* length is actually (d_reclen - 2 -\n"
512 "                         offsetof(struct linux_dirent, d_name)) */\n"
513 "    /*\n"
514 "    char           pad;       // Zero padding byte\n"
515 "    char           d_type;    // File type (only since Linux\n"
516 "                              // 2.6.4); offset is (d_reclen - 1)\n"
517 "    */\n"
518
519 #. type: Plain text
520 #: build/C/man2/getdents.2:81
521 #, no-wrap
522 msgid "}\n"
523 msgstr "}\n"
524
525 #. type: Plain text
526 #: build/C/man2/getdents.2:94
527 msgid ""
528 "I<d_ino> is an inode number.  I<d_off> is the distance from the start of the "
529 "directory to the start of the next I<linux_dirent>.  I<d_reclen> is the size "
530 "of this entire I<linux_dirent>.  I<d_name> is a null-terminated filename."
531 msgstr ""
532 "I<d_ino> は inode 番号である。 I<d_off> はディレクトリの先頭から次の "
533 "I<linux_dirent> の先頭までの距離である。 I<d_reclen> はこの I<linux_dirent> "
534 "全体のサイズである。 I<d_name> はヌル文字で終わるファイル名である。"
535
536 #. type: Plain text
537 #: build/C/man2/getdents.2:99
538 msgid ""
539 "I<d_type> is a byte at the end of the structure that indicates the file "
540 "type.  It contains one of the following values (defined in I<E<lt>dirent."
541 "hE<gt>>):"
542 msgstr ""
543 "I<d_type> は、構造体の最後のバイトであり、ファイルタイプを示す。 I<d_type> は"
544 "以下の値の一つを取る (I<E<lt>dirent.hE<gt>> で定義されている)。"
545
546 #. type: TP
547 #: build/C/man2/getdents.2:99 build/C/man3/readdir.3:200
548 #, no-wrap
549 msgid "B<DT_BLK>"
550 msgstr "B<DT_BLK>"
551
552 #. type: Plain text
553 #: build/C/man2/getdents.2:102 build/C/man3/readdir.3:203
554 msgid "This is a block device."
555 msgstr "ブロックデバイスである。"
556
557 #. type: TP
558 #: build/C/man2/getdents.2:102 build/C/man3/readdir.3:203
559 #, no-wrap
560 msgid "B<DT_CHR>"
561 msgstr "B<DT_CHR>"
562
563 #. type: Plain text
564 #: build/C/man2/getdents.2:105 build/C/man3/readdir.3:206
565 msgid "This is a character device."
566 msgstr "キャラクターデバイスである。"
567
568 #. type: TP
569 #: build/C/man2/getdents.2:105 build/C/man3/readdir.3:206
570 #, no-wrap
571 msgid "B<DT_DIR>"
572 msgstr "B<DT_DIR>"
573
574 #. type: Plain text
575 #: build/C/man2/getdents.2:108 build/C/man3/readdir.3:209
576 msgid "This is a directory."
577 msgstr "ディレクトリである。"
578
579 #. type: TP
580 #: build/C/man2/getdents.2:108 build/C/man3/readdir.3:209
581 #, no-wrap
582 msgid "B<DT_FIFO>"
583 msgstr "B<DT_FIFO>"
584
585 #. type: Plain text
586 #: build/C/man2/getdents.2:111 build/C/man3/readdir.3:212
587 msgid "This is a named pipe (FIFO)."
588 msgstr "名前付きパイプ (FIFO) である。"
589
590 #. type: TP
591 #: build/C/man2/getdents.2:111 build/C/man3/readdir.3:212
592 #, no-wrap
593 msgid "B<DT_LNK>"
594 msgstr "B<DT_LNK>"
595
596 #. type: Plain text
597 #: build/C/man2/getdents.2:114 build/C/man3/readdir.3:215
598 msgid "This is a symbolic link."
599 msgstr "シンボリックリンクである。"
600
601 #. type: TP
602 #: build/C/man2/getdents.2:114 build/C/man3/readdir.3:215
603 #, no-wrap
604 msgid "B<DT_REG>"
605 msgstr "B<DT_REG>"
606
607 #. type: Plain text
608 #: build/C/man2/getdents.2:117 build/C/man3/readdir.3:218
609 msgid "This is a regular file."
610 msgstr "通常のファイルである。"
611
612 #. type: TP
613 #: build/C/man2/getdents.2:117 build/C/man3/readdir.3:218
614 #, no-wrap
615 msgid "B<DT_SOCK>"
616 msgstr "B<DT_SOCK>"
617
618 #. type: Plain text
619 #: build/C/man2/getdents.2:120 build/C/man3/readdir.3:221
620 msgid "This is a UNIX domain socket."
621 msgstr "UNIX ドメインソケットである。"
622
623 #. type: TP
624 #: build/C/man2/getdents.2:120 build/C/man3/readdir.3:221
625 #, no-wrap
626 msgid "B<DT_UNKNOWN>"
627 msgstr "B<DT_UNKNOWN>"
628
629 #.  The glibc manual says that on some systems this is the only
630 #.  value returned
631 #. type: Plain text
632 #: build/C/man2/getdents.2:123 build/C/man3/readdir.3:226
633 msgid "The file type is unknown."
634 msgstr "ファイルタイプが不明である。"
635
636 #. type: Plain text
637 #: build/C/man2/getdents.2:133
638 msgid ""
639 "The I<d_type> field is implemented since Linux 2.6.4.  It occupies a space "
640 "that was previously a zero-filled padding byte in the I<linux_dirent> "
641 "structure.  Thus, on kernels before 2.6.3, attempting to access this field "
642 "always provides the value 0 (B<DT_UNKNOWN>)."
643 msgstr ""
644 "I<d_type> フィールドは Linux 2.6.4 から実装されている。 これは "
645 "I<linux_dirent> 構造体のうち、以前はゼロで埋められていた空間に配置されてい"
646 "る。 従って、2.6.3 以前のカーネルでは、このフィールドにアクセスしようとする"
647 "と 常に値 0 (B<DT_UNKNOWN>)  が返される。"
648
649 #.  kernel 2.6.27
650 #.  The same sentence is in getdents.2
651 #. type: Plain text
652 #: build/C/man2/getdents.2:142 build/C/man3/readdir.3:240
653 msgid ""
654 "Currently, only some filesystems (among them: Btrfs, ext2, ext3, and ext4)  "
655 "have full support for returning the file type in I<d_type>.  All "
656 "applications must properly handle a return of B<DT_UNKNOWN>."
657 msgstr ""
658 "現在のところ、 I<d_type> でファイルタイプを返す機能が完全にサポートされている"
659 "のは、 いくつかのファイルシステムにおいてのみである (Btrfs, ext2, ext3, ext4 "
660 "はサポートしている)。 どのアプリケーションも、 B<DT_UNKNOWN> が返された際に適"
661 "切に処理できなければならない。"
662
663 #. type: Plain text
664 #: build/C/man2/getdents.2:148
665 msgid ""
666 "On success, the number of bytes read is returned.  On end of directory, 0 is "
667 "returned.  On error, -1 is returned, and I<errno> is set appropriately."
668 msgstr ""
669 "成功した場合は、読み込んだバイト数が返される。 ディレクトリの終わりならば 0 "
670 "が返される。 エラーの場合は -1 を返され、 I<errno> に適切な値が設定される。"
671
672 #. type: Plain text
673 #: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102
674 msgid "Invalid file descriptor I<fd>."
675 msgstr "ファイルディスクリプター I<fd> が不正である。"
676
677 #. type: TP
678 #: build/C/man2/getdents.2:153 build/C/man2/readdir.2:102
679 #, no-wrap
680 msgid "B<EFAULT>"
681 msgstr "B<EFAULT>"
682
683 #. type: Plain text
684 #: build/C/man2/getdents.2:156 build/C/man2/readdir.2:105
685 msgid "Argument points outside the calling process's address space."
686 msgstr "引き数が呼び出したプロセスのアドレス空間外を指している。"
687
688 #. type: Plain text
689 #: build/C/man2/getdents.2:159 build/C/man2/readdir.2:108
690 msgid "Result buffer is too small."
691 msgstr "結果用のバッファーが小さすぎる。"
692
693 #. type: TP
694 #: build/C/man2/getdents.2:159 build/C/man3/opendir.3:106
695 #: build/C/man2/readdir.2:108 build/C/man3/scandir.3:201
696 #, no-wrap
697 msgid "B<ENOENT>"
698 msgstr "B<ENOENT>"
699
700 #. type: Plain text
701 #: build/C/man2/getdents.2:162 build/C/man2/readdir.2:111
702 msgid "No such directory."
703 msgstr "そのようなディレクトリは存在しない。"
704
705 #. type: TP
706 #: build/C/man2/getdents.2:162 build/C/man3/opendir.3:112
707 #: build/C/man2/readdir.2:111 build/C/man3/scandir.3:207
708 #: build/C/man3/scandir.3:217
709 #, no-wrap
710 msgid "B<ENOTDIR>"
711 msgstr "B<ENOTDIR>"
712
713 #. type: Plain text
714 #: build/C/man2/getdents.2:165 build/C/man2/readdir.2:114
715 msgid "File descriptor does not refer to a directory."
716 msgstr "ファイルディスクリプターがディレクトリを参照していない。"
717
718 #.  SVr4 documents additional ENOLINK, EIO error conditions.
719 #. type: Plain text
720 #: build/C/man2/getdents.2:168
721 msgid "SVr4."
722 msgstr "SVr4."
723
724 #. type: Plain text
725 #: build/C/man2/getdents.2:177
726 msgid ""
727 "Glibc does not provide a wrapper for this system call; call it using "
728 "B<syscall>(2).  You will need to define the I<linux_dirent> structure "
729 "yourself.  However, you probably want to use B<readdir>(3)  instead."
730 msgstr ""
731 "glibc はこのシステムコールに対するラッパー関数を提供していないので、 "
732 "B<syscall>(2)  を使って呼び出すこと。 I<linux_dirent> 構造体は自分で定義する"
733 "必要がある。しかし、たいていはこのシステムコールではなく B<readdir>(3) を使う"
734 "べき場面のことが多い。"
735
736 #. type: Plain text
737 #: build/C/man2/getdents.2:180
738 msgid "This call supersedes B<readdir>(2)."
739 msgstr "このシステムコールは B<readdir>(2)  を置き換えるものである。"
740
741 #. type: Plain text
742 #: build/C/man2/getdents.2:193
743 msgid ""
744 "The original Linux B<getdents>()  system call did not handle large "
745 "filesystems and large file offsets.  Consequently, Linux 2.4 added "
746 "B<getdents64>(), with wider types for the I<d_ino> and I<d_off> fields "
747 "employed in the I<linux_dirent> structure."
748 msgstr ""
749 "元々の Linux の B<getdents>() システムコールは、大きなファイルシステムと\n"
750 "大きなファイルオフセットを扱うことができなかった。\n"
751 "その結果、Linux 2.4 で B<getdents64>() が追加された。\n"
752 "B<getdents64>() では、I<linux_dirent> 構造体のフィールド I<d_ino> と\n"
753 "I<d_off> でビット幅の大きなデータ型が使われている。"
754
755 #. type: SH
756 #: build/C/man2/getdents.2:193 build/C/man3/scandir.3:259
757 #, no-wrap
758 msgid "EXAMPLE"
759 msgstr "例"
760
761 #.  FIXME The example program needs to be revised, since it uses the older
762 #.  getdents() system call and the structure with smaller field widths.
763 #. type: Plain text
764 #: build/C/man2/getdents.2:200
765 msgid ""
766 "The program below demonstrates the use of B<getdents>().  The following "
767 "output shows an example of what we see when running this program on an ext2 "
768 "directory:"
769 msgstr ""
770 "下記のプログラムは B<getdents>()  の使用例を示したものである。 以下は、このプ"
771 "ログラムを ext2 ディレクトリで実行した際に得られる 出力の例である。"
772
773 #. type: Plain text
774 #: build/C/man2/getdents.2:213
775 #, no-wrap
776 msgid ""
777 "$B< ./a.out /testfs/>\n"
778 "--------------- nread=120 ---------------\n"
779 "inode#    file type  d_reclen  d_off   d_name\n"
780 "       2  directory    16         12  .\n"
781 "       2  directory    16         24  ..\n"
782 "      11  directory    24         44  lost+found\n"
783 "      12  regular      16         56  a\n"
784 "  228929  directory    16         68  sub\n"
785 "   16353  directory    16         80  sub2\n"
786 "  130817  directory    16       4096  sub3\n"
787 msgstr ""
788 "$B< ./a.out /testfs/>\n"
789 "--------------- nread=120 ---------------\n"
790 "inode#    file type  d_reclen  d_off   d_name\n"
791 "       2  directory    16         12  .\n"
792 "       2  directory    16         24  ..\n"
793 "      11  directory    24         44  lost+found\n"
794 "      12  regular      16         56  a\n"
795 "  228929  directory    16         68  sub\n"
796 "   16353  directory    16         80  sub2\n"
797 "  130817  directory    16       4096  sub3\n"
798
799 #. type: SS
800 #: build/C/man2/getdents.2:215
801 #, no-wrap
802 msgid "Program source"
803 msgstr "プログラムのソース"
804
805 #. type: Plain text
806 #: build/C/man2/getdents.2:226
807 #, no-wrap
808 msgid ""
809 "#define _GNU_SOURCE\n"
810 "#include E<lt>dirent.hE<gt>     /* Defines DT_* constants */\n"
811 "#include E<lt>fcntl.hE<gt>\n"
812 "#include E<lt>stdio.hE<gt>\n"
813 "#include E<lt>unistd.hE<gt>\n"
814 "#include E<lt>stdlib.hE<gt>\n"
815 "#include E<lt>sys/stat.hE<gt>\n"
816 "#include E<lt>sys/syscall.hE<gt>\n"
817 msgstr ""
818 "#define _GNU_SOURCE\n"
819 "#include E<lt>dirent.hE<gt>     /* Defines DT_* constants */\n"
820 "#include E<lt>fcntl.hE<gt>\n"
821 "#include E<lt>stdio.hE<gt>\n"
822 "#include E<lt>unistd.hE<gt>\n"
823 "#include E<lt>stdlib.hE<gt>\n"
824 "#include E<lt>sys/stat.hE<gt>\n"
825 "#include E<lt>sys/syscall.hE<gt>\n"
826
827 #. type: Plain text
828 #: build/C/man2/getdents.2:229
829 #, no-wrap
830 msgid ""
831 "#define handle_error(msg) \\e\n"
832 "        do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
833 msgstr ""
834 "#define handle_error(msg) \\e\n"
835 "        do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
836
837 #. type: Plain text
838 #: build/C/man2/getdents.2:236
839 #, no-wrap
840 msgid ""
841 "struct linux_dirent {\n"
842 "    long           d_ino;\n"
843 "    off_t          d_off;\n"
844 "    unsigned short d_reclen;\n"
845 "    char           d_name[];\n"
846 "};\n"
847 msgstr ""
848 "struct linux_dirent {\n"
849 "    long           d_ino;\n"
850 "    off_t          d_off;\n"
851 "    unsigned short d_reclen;\n"
852 "    char           d_name[];\n"
853 "};\n"
854
855 #. type: Plain text
856 #: build/C/man2/getdents.2:238
857 #, no-wrap
858 msgid "#define BUF_SIZE 1024\n"
859 msgstr "#define BUF_SIZE 1024\n"
860
861 #. type: Plain text
862 #: build/C/man2/getdents.2:247
863 #, no-wrap
864 msgid ""
865 "int\n"
866 "main(int argc, char *argv[])\n"
867 "{\n"
868 "    int fd, nread;\n"
869 "    char buf[BUF_SIZE];\n"
870 "    struct linux_dirent *d;\n"
871 "    int bpos;\n"
872 "    char d_type;\n"
873 msgstr ""
874 "int\n"
875 "main(int argc, char *argv[])\n"
876 "{\n"
877 "    int fd, nread;\n"
878 "    char buf[BUF_SIZE];\n"
879 "    struct linux_dirent *d;\n"
880 "    int bpos;\n"
881 "    char d_type;\n"
882
883 #. type: Plain text
884 #: build/C/man2/getdents.2:251
885 #, no-wrap
886 msgid ""
887 "    fd = open(argc E<gt> 1 ? argv[1] : \".\", O_RDONLY | O_DIRECTORY);\n"
888 "    if (fd == -1)\n"
889 "        handle_error(\"open\");\n"
890 msgstr ""
891 "    fd = open(argc E<gt> 1 ? argv[1] : \".\", O_RDONLY | O_DIRECTORY);\n"
892 "    if (fd == -1)\n"
893 "        handle_error(\"open\");\n"
894
895 #. type: Plain text
896 #: build/C/man2/getdents.2:256
897 #, no-wrap
898 msgid ""
899 "    for ( ; ; ) {\n"
900 "        nread = syscall(SYS_getdents, fd, buf, BUF_SIZE);\n"
901 "        if (nread == -1)\n"
902 "            handle_error(\"getdents\");\n"
903 msgstr ""
904 "    for ( ; ; ) {\n"
905 "        nread = syscall(SYS_getdents, fd, buf, BUF_SIZE);\n"
906 "        if (nread == -1)\n"
907 "            handle_error(\"getdents\");\n"
908
909 #. type: Plain text
910 #: build/C/man2/getdents.2:259
911 #, no-wrap
912 msgid ""
913 "        if (nread == 0)\n"
914 "            break;\n"
915 msgstr ""
916 "        if (nread == 0)\n"
917 "            break;\n"
918
919 #. type: Plain text
920 #: build/C/man2/getdents.2:278
921 #, no-wrap
922 msgid ""
923 "        printf(\"--------------- nread=%d ---------------\\en\", nread);\n"
924 "        printf(\"inode#    file type  d_reclen  d_off   d_name\\en\");\n"
925 "        for (bpos = 0; bpos E<lt> nread;) {\n"
926 "            d = (struct linux_dirent *) (buf + bpos);\n"
927 "            printf(\"%8ld  \", d-E<gt>d_ino);\n"
928 "            d_type = *(buf + bpos + d-E<gt>d_reclen - 1);\n"
929 "            printf(\"%-10s \", (d_type == DT_REG) ?  \"regular\" :\n"
930 "                             (d_type == DT_DIR) ?  \"directory\" :\n"
931 "                             (d_type == DT_FIFO) ? \"FIFO\" :\n"
932 "                             (d_type == DT_SOCK) ? \"socket\" :\n"
933 "                             (d_type == DT_LNK) ?  \"symlink\" :\n"
934 "                             (d_type == DT_BLK) ?  \"block dev\" :\n"
935 "                             (d_type == DT_CHR) ?  \"char dev\" : \"???\");\n"
936 "            printf(\"%4d %10lld  %s\\en\", d-E<gt>d_reclen,\n"
937 "                    (long long) d-E<gt>d_off, d-E<gt>d_name);\n"
938 "            bpos += d-E<gt>d_reclen;\n"
939 "        }\n"
940 "    }\n"
941 msgstr ""
942 "        printf(\"--------------- nread=%d ---------------\\en\", nread);\n"
943 "        printf(\"inode#    file type  d_reclen  d_off   d_name\\en\");\n"
944 "        for (bpos = 0; bpos E<lt> nread;) {\n"
945 "            d = (struct linux_dirent *) (buf + bpos);\n"
946 "            printf(\"%8ld  \", d-E<gt>d_ino);\n"
947 "            d_type = *(buf + bpos + d-E<gt>d_reclen - 1);\n"
948 "            printf(\"%-10s \", (d_type == DT_REG) ?  \"regular\" :\n"
949 "                             (d_type == DT_DIR) ?  \"directory\" :\n"
950 "                             (d_type == DT_FIFO) ? \"FIFO\" :\n"
951 "                             (d_type == DT_SOCK) ? \"socket\" :\n"
952 "                             (d_type == DT_LNK) ?  \"symlink\" :\n"
953 "                             (d_type == DT_BLK) ?  \"block dev\" :\n"
954 "                             (d_type == DT_CHR) ?  \"char dev\" : \"???\");\n"
955 "            printf(\"%4d %10lld  %s\\en\", d-E<gt>d_reclen,\n"
956 "                    (long long) d-E<gt>d_off, d-E<gt>d_name);\n"
957 "            bpos += d-E<gt>d_reclen;\n"
958 "        }\n"
959 "    }\n"
960
961 #. type: Plain text
962 #: build/C/man2/getdents.2:281
963 #, no-wrap
964 msgid ""
965 "    exit(EXIT_SUCCESS);\n"
966 "}\n"
967 msgstr ""
968 "    exit(EXIT_SUCCESS);\n"
969 "}\n"
970
971 #. type: Plain text
972 #: build/C/man2/getdents.2:285
973 msgid "B<readdir>(2), B<readdir>(3)"
974 msgstr "B<readdir>(2), B<readdir>(3)"
975
976 #. type: TH
977 #: build/C/man3/getdirentries.3:27
978 #, no-wrap
979 msgid "GETDIRENTRIES"
980 msgstr "GETDIRENTRIES"
981
982 #. type: TH
983 #: build/C/man3/getdirentries.3:27
984 #, no-wrap
985 msgid "2014-06-13"
986 msgstr "2014-06-13"
987
988 #. type: TH
989 #: build/C/man3/getdirentries.3:27 build/C/man3/opendir.3:32
990 #: build/C/man3/scandir.3:62
991 #, no-wrap
992 msgid "GNU"
993 msgstr "GNU"
994
995 #. type: Plain text
996 #: build/C/man3/getdirentries.3:30
997 msgid ""
998 "getdirentries - get directory entries in a filesystem-independent format"
999 msgstr ""
1000 "getdirentries - ディレクトリのエントリーをファイルシステムに依存しない形式で"
1001 "取得する"
1002
1003 #. type: Plain text
1004 #: build/C/man3/getdirentries.3:35
1005 msgid ""
1006 "B<ssize_t getdirentries(int >I<fd>B<, char *>I<buf>B<, size_t >I<nbytes> B<, "
1007 "off_t *>I<basep>B<);>"
1008 msgstr ""
1009 "B<ssize_t getdirentries(int >I<fd>B<, char *>I<buf>B<, size_t >I<nbytes> B<, "
1010 "off_t *>I<basep>B<);>"
1011
1012 #. type: Plain text
1013 #: build/C/man3/getdirentries.3:43
1014 msgid "B<getdirentries>(): _BSD_SOURCE || _SVID_SOURCE"
1015 msgstr "B<getdirentries>(): _BSD_SOURCE || _SVID_SOURCE"
1016
1017 #. type: Plain text
1018 #: build/C/man3/getdirentries.3:56
1019 msgid ""
1020 "Read directory entries from the directory specified by I<fd> into I<buf>.  "
1021 "At most I<nbytes> are read.  Reading starts at offset I<*basep>, and "
1022 "I<*basep> is updated with the new position after reading."
1023 msgstr ""
1024 "I<fd> で指定されたディレクトリからエントリーを読み、 I<buf> に格納する。最大"
1025 "で I<nbytes> が読み込まれる。読み込みはオフセット I<*basep> から開始され、読"
1026 "み込み終了時には I<*basep> は新しい位置に更新される。"
1027
1028 #. type: Plain text
1029 #: build/C/man3/getdirentries.3:62
1030 msgid ""
1031 "B<getdirentries>()  returns the number of bytes read or zero when at the end "
1032 "of the directory.  If an error occurs, -1 is returned, and I<errno> is set "
1033 "appropriately."
1034 msgstr ""
1035 "B<getdirentries>()  は読み込んだバイト数を返すか、ディレクトリの最後にきた場"
1036 "合は 0 を返す。 エラーが起こったら -1 を返し、 I<errno> をエラーに対応する値"
1037 "にセットする。"
1038
1039 #. type: Plain text
1040 #: build/C/man3/getdirentries.3:64
1041 msgid "See the Linux library source code for details."
1042 msgstr "詳細は Linux のライブラリソースコードを読んでほしい。"
1043
1044 #. type: Plain text
1045 #: build/C/man3/getdirentries.3:69
1046 msgid "The B<getdirentries>()  function is thread-safe."
1047 msgstr "B<getdirentries>() 関数はスレッドセーフである。"
1048
1049 #. type: Plain text
1050 #: build/C/man3/getdirentries.3:77
1051 msgid ""
1052 "Not in POSIX.1-2001.  Present on the BSDs, and a few other systems.  Use "
1053 "B<opendir>(3)  and B<readdir>(3)  instead."
1054 msgstr ""
1055 "POSIX.1-2001 にはない。 BSD に存在し、他にもいくつかのシステムにもある。 代わ"
1056 "りに B<opendir>(3)  と B<readdir>(3)  を使用すること。"
1057
1058 #. type: Plain text
1059 #: build/C/man3/getdirentries.3:80
1060 msgid "B<lseek>(2), B<open>(2)"
1061 msgstr "B<lseek>(2), B<open>(2)"
1062
1063 #. type: TH
1064 #: build/C/man3/opendir.3:32
1065 #, no-wrap
1066 msgid "OPENDIR"
1067 msgstr "OPENDIR"
1068
1069 #. type: TH
1070 #: build/C/man3/opendir.3:32
1071 #, no-wrap
1072 msgid "2010-06-20"
1073 msgstr "2010-06-20"
1074
1075 #. type: Plain text
1076 #: build/C/man3/opendir.3:35
1077 msgid "opendir, fdopendir - open a directory"
1078 msgstr "opendir, fdopendir - ディレクトリをオープンする"
1079
1080 #. type: Plain text
1081 #: build/C/man3/opendir.3:43
1082 #, no-wrap
1083 msgid ""
1084 "B<DIR *opendir(const char *>I<name>B<);>\n"
1085 "B<DIR *fdopendir(int >I<fd>B<);>\n"
1086 msgstr ""
1087 "B<DIR *opendir(const char *>I<name>B<);>\n"
1088 "B<DIR *fdopendir(int >I<fd>B<);>\n"
1089
1090 #. type: Plain text
1091 #: build/C/man3/opendir.3:51
1092 msgid "B<fdopendir>():"
1093 msgstr "B<fdopendir>():"
1094
1095 #. type: TP
1096 #: build/C/man3/opendir.3:54
1097 #, no-wrap
1098 msgid "Since glibc 2.10:"
1099 msgstr "glibc 2.10 以降:"
1100
1101 #. type: Plain text
1102 #: build/C/man3/opendir.3:57
1103 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1104 msgstr "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
1105
1106 #. type: TP
1107 #: build/C/man3/opendir.3:57
1108 #, no-wrap
1109 msgid "Before glibc 2.10:"
1110 msgstr "glibc 2.10 より前:"
1111
1112 #. type: Plain text
1113 #: build/C/man3/opendir.3:60
1114 msgid "_GNU_SOURCE"
1115 msgstr "_GNU_SOURCE"
1116
1117 #. type: Plain text
1118 #: build/C/man3/opendir.3:69
1119 msgid ""
1120 "The B<opendir>()  function opens a directory stream corresponding to the "
1121 "directory I<name>, and returns a pointer to the directory stream.  The "
1122 "stream is positioned at the first entry in the directory."
1123 msgstr ""
1124 "B<opendir>()  関数はディレクトリ I<name> に対応する ディレクトリストリームを"
1125 "オープンし、そのストリームへのポインターを返す。 ストリームの位置はディレクト"
1126 "リの先頭のエントリーに設定される。"
1127
1128 #. type: Plain text
1129 #: build/C/man3/opendir.3:83
1130 msgid ""
1131 "The B<fdopendir>()  function is like B<opendir>(), but returns a directory "
1132 "stream for the directory referred to by the open file descriptor I<fd>.  "
1133 "After a successful call to B<fdopendir>(), I<fd> is used internally by the "
1134 "implementation, and should not otherwise be used by the application."
1135 msgstr ""
1136 "B<fdopendir>()  関数は B<opendir>()  と同様だが、オープン済みのファイルディス"
1137 "クリプター I<fd> により参照されるディレクトリに対する ディレクトリストリーム"
1138 "を返す。 B<fdopendir>()  の呼び出しが成功した後は、 I<fd> は実装の内部で使用"
1139 "される。アプリケーションは I<fd> を他の場面で使用すべきではない。"
1140
1141 #. type: Plain text
1142 #: build/C/man3/opendir.3:92
1143 msgid ""
1144 "The B<opendir>()  and B<fdopendir>()  functions return a pointer to the "
1145 "directory stream.  On error, NULL is returned, and I<errno> is set "
1146 "appropriately."
1147 msgstr ""
1148 "関数 B<opendir>()  と B<fdopendir>()  はディレクトリストリームへのポインター"
1149 "を返す。 エラーの場合は、NULL が返されて、 I<errno> が適切に設定される。"
1150
1151 #. type: TP
1152 #: build/C/man3/opendir.3:93
1153 #, no-wrap
1154 msgid "B<EACCES>"
1155 msgstr "B<EACCES>"
1156
1157 #. type: Plain text
1158 #: build/C/man3/opendir.3:96
1159 msgid "Permission denied."
1160 msgstr "アクセス権限がない。"
1161
1162 #. type: Plain text
1163 #: build/C/man3/opendir.3:100
1164 msgid "I<fd> is not a valid file descriptor opened for reading."
1165 msgstr ""
1166 "I<fd> が読み出し用にオープンされた、有効なファイルディスクリプターではない。"
1167
1168 #. type: TP
1169 #: build/C/man3/opendir.3:100
1170 #, no-wrap
1171 msgid "B<EMFILE>"
1172 msgstr "B<EMFILE>"
1173
1174 #. type: Plain text
1175 #: build/C/man3/opendir.3:103
1176 msgid "Too many file descriptors in use by process."
1177 msgstr "プロセスが使用中のファイルディスクリプターが多すぎる。"
1178
1179 #. type: TP
1180 #: build/C/man3/opendir.3:103
1181 #, no-wrap
1182 msgid "B<ENFILE>"
1183 msgstr "B<ENFILE>"
1184
1185 #. type: Plain text
1186 #: build/C/man3/opendir.3:106
1187 msgid "Too many files are currently open in the system."
1188 msgstr "システムでオープンされているファイルが多すぎる。"
1189
1190 #. type: Plain text
1191 #: build/C/man3/opendir.3:109
1192 msgid "Directory does not exist, or I<name> is an empty string."
1193 msgstr "ディレクトリが存在しないか、または I<name> が空文字列である。"
1194
1195 #. type: TP
1196 #: build/C/man3/opendir.3:109 build/C/man3/scandir.3:204
1197 #, no-wrap
1198 msgid "B<ENOMEM>"
1199 msgstr "B<ENOMEM>"
1200
1201 #. type: Plain text
1202 #: build/C/man3/opendir.3:112 build/C/man3/scandir.3:207
1203 msgid "Insufficient memory to complete the operation."
1204 msgstr "操作を完了するのに十分なメモリーがない。"
1205
1206 #. type: Plain text
1207 #: build/C/man3/opendir.3:115
1208 msgid "I<name> is not a directory."
1209 msgstr "I<name> はディレクトリではない。"
1210
1211 #. type: SH
1212 #: build/C/man3/opendir.3:115 build/C/man3/scandir.3:223
1213 #, no-wrap
1214 msgid "VERSIONS"
1215 msgstr "バージョン"
1216
1217 #. type: Plain text
1218 #: build/C/man3/opendir.3:118
1219 msgid "B<fdopendir>()  is available in glibc since version 2.4."
1220 msgstr "B<fdopendir>()  は glibc 2.4 以降で利用可能である。"
1221
1222 #. type: Plain text
1223 #: build/C/man3/opendir.3:123
1224 msgid ""
1225 "B<opendir>()  is present on SVr4, 4.3BSD, and specified in POSIX.1-2001.  "
1226 "B<fdopendir>()  is specified in POSIX.1-2008."
1227 msgstr ""
1228 "B<opendir>()  は SVr4 と 4.3BSD に存在し、 POSIX.1-2001 で規定されている。 "
1229 "B<fdopendir>()  は POSIX.1-2008 で規定されている。"
1230
1231 #. type: Plain text
1232 #: build/C/man3/opendir.3:126
1233 msgid ""
1234 "The underlying file descriptor of the directory stream can be obtained using "
1235 "B<dirfd>(3)."
1236 msgstr ""
1237 "ディレクトリストリームに対応するファイルディスクリプターは B<dirfd>(3)  を使"
1238 "用して得ることができる。"
1239
1240 #. type: Plain text
1241 #: build/C/man3/opendir.3:140
1242 msgid ""
1243 "The B<opendir>()  function sets the close-on-exec flag for the file "
1244 "descriptor underlying the I<DIR *>.  The B<fdopendir>()  function leaves the "
1245 "setting of the close-on-exec flag unchanged for the file descriptor, I<fd>.  "
1246 "POSIX.1-200x leaves it unspecified whether a successful call to "
1247 "B<fdopendir>()  will set the close-on-exec flag for the file descriptor, "
1248 "I<fd>."
1249 msgstr ""
1250 "B<opendir>()  関数は、 I<DIR *> の背後にあるファイルディスクリプターの close-"
1251 "on-exec フラグを設定する。 B<fdopendir>()  関数は、ファイルディスクリプター"
1252 "の close-on-exec フラグの設定を変更しない。 B<fdopendir>()  の呼び出しが成功"
1253 "した際に、ファイルディスクリプター I<fd> の close-on-exec を設定するかどうか"
1254 "は、 POSIX.1-200x では規定されていない。"
1255
1256 #. type: Plain text
1257 #: build/C/man3/opendir.3:149
1258 msgid ""
1259 "B<open>(2), B<closedir>(3), B<dirfd>(3), B<readdir>(3), B<rewinddir>(3), "
1260 "B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
1261 msgstr ""
1262 "B<open>(2), B<closedir>(3), B<dirfd>(3), B<readdir>(3), B<rewinddir>(3), "
1263 "B<scandir>(3), B<seekdir>(3), B<telldir>(3)"
1264
1265 #. type: TH
1266 #: build/C/man2/readdir.2:30 build/C/man3/readdir.3:36
1267 #, no-wrap
1268 msgid "READDIR"
1269 msgstr "READDIR"
1270
1271 #. type: TH
1272 #: build/C/man2/readdir.2:30 build/C/man3/readdir.3:36
1273 #, no-wrap
1274 msgid "2013-06-21"
1275 msgstr "2013-06-21"
1276
1277 #. type: Plain text
1278 #: build/C/man2/readdir.2:33
1279 msgid "readdir - read directory entry"
1280 msgstr "readdir - ディレクトリエントリーを読み込む"
1281
1282 #. type: Plain text
1283 #: build/C/man2/readdir.2:38
1284 #, no-wrap
1285 msgid ""
1286 "B<int readdir(unsigned int >I<fd>B<, struct old_linux_dirent *>I<dirp>B<,>\n"
1287 "B<            unsigned int >I<count>B<);>\n"
1288 msgstr ""
1289 "B<int readdir(unsigned int >I<fd>B<, struct old_linux_dirent *>I<dirp>B<,>\n"
1290 "B<            unsigned int >I<count>B<);>\n"
1291
1292 #. type: Plain text
1293 #: build/C/man2/readdir.2:50
1294 msgid ""
1295 "This is not the function you are interested in.  Look at B<readdir>(3)  for "
1296 "the POSIX conforming C library interface.  This page documents the bare "
1297 "kernel system call interface, which is superseded by B<getdents>(2)."
1298 msgstr ""
1299 "これはあなたの興味をもっている関数ではない。 POSIX 準拠の C ライブラリイン"
1300 "ターフェースについては B<readdir>(3)  を見ること。 このページは裸のカーネルの"
1301 "システムコールインターフェースについて 記述しているが、このインターフェース"
1302 "は B<getdents>(2)  によって取って代わられた。"
1303
1304 #. type: Plain text
1305 #: build/C/man2/readdir.2:64
1306 msgid ""
1307 "B<readdir>()  reads one I<old_linux_dirent> structure from the directory "
1308 "referred to by the file descriptor I<fd> into the buffer pointed to by "
1309 "I<dirp>.  The argument I<count> is ignored; at most one I<old_linux_dirent> "
1310 "structure is read."
1311 msgstr ""
1312 "B<readdir>()  は、ファイルディスクリプター I<fd> が参照しているディレクトリか"
1313 "ら I<old_linux_dirent> 構造体を読み込み、 I<dirp> で指されたバッファーに格納"
1314 "する。 I<count> 引き数は(ほとんどの I<old_linux_dirent> 構造体の読み込みにお"
1315 "いて)無視される"
1316
1317 #. type: Plain text
1318 #: build/C/man2/readdir.2:68
1319 msgid "The I<old_linux_dirent> structure is declared as follows:"
1320 msgstr "I<old_linux_dirent> 構造体は以下のように宣言される:"
1321
1322 #. type: Plain text
1323 #: build/C/man2/readdir.2:77
1324 #, no-wrap
1325 msgid ""
1326 "struct old_linux_dirent {\n"
1327 "    long  d_ino;              /* inode number */\n"
1328 "    off_t d_off;              /* offset to this I<old_linux_dirent> */\n"
1329 "    unsigned short d_reclen;  /* length of this I<d_name> */\n"
1330 "    char  d_name[NAME_MAX+1]; /* filename (null-terminated) */\n"
1331 "}\n"
1332 msgstr ""
1333 "struct old_linux_dirent {\n"
1334 "    long  d_ino;              /* inode number */\n"
1335 "    off_t d_off;              /* offset to this I<old_linux_dirent> */\n"
1336 "    unsigned short d_reclen;  /* length of this I<d_name> */\n"
1337 "    char  d_name[NAME_MAX+1]; /* filename (null-terminated) */\n"
1338 "}\n"
1339
1340 #. type: Plain text
1341 #: build/C/man2/readdir.2:91
1342 msgid ""
1343 "I<d_ino> is an inode number.  I<d_off> is the distance from the start of the "
1344 "directory to this I<old_linux_dirent>.  I<d_reclen> is the size of "
1345 "I<d_name>, not counting the terminating null byte (\\(aq\\e0\\(aq).  "
1346 "I<d_name> is a null-terminated filename."
1347 msgstr ""
1348 "I<d_ino> は inode 番号である。 I<d_off> はディレクトリの最初からこの "
1349 "I<old_linux_dirent> まで距離である。 I<d_reclen> は I<d_name> の大きさで、終"
1350 "端のヌルバイト (\\(aq\\e0\\(aq) を含まない。 I<d_name> はヌルバイトで終わる"
1351 "ファイル名である。"
1352
1353 #. type: Plain text
1354 #: build/C/man2/readdir.2:97
1355 msgid ""
1356 "On success, 1 is returned.  On end of directory, 0 is returned.  On error, "
1357 "-1 is returned, and I<errno> is set appropriately."
1358 msgstr ""
1359 "成功した場合は、1 が返される。 ディレクトリの最後では 0 が返される。 エラーの"
1360 "場合は -1 が返され、 I<errno> が適切に設定される。"
1361
1362 #. type: Plain text
1363 #: build/C/man2/readdir.2:116
1364 msgid "This system call is Linux-specific."
1365 msgstr "このシステムコールは Linux 特有である。"
1366
1367 #. type: Plain text
1368 #: build/C/man2/readdir.2:125
1369 msgid ""
1370 "Glibc does not provide a wrapper for this system call; call it using "
1371 "B<syscall>(2).  You will need to define the I<old_linux_dirent> structure "
1372 "yourself.  However, probably you should use B<readdir>(3)  instead."
1373 msgstr ""
1374 "glibc はこのシステムコールに対するラッパー関数を提供していない。 "
1375 "B<syscall>(2)  を使って呼び出すこと。 I<old_linux_dirent> 構造体を自分自身で"
1376 "定義する必要がある。しかし、たいていはこのシステムコールではなく "
1377 "B<readdir>(3) を使うべき場面のことが多い。"
1378
1379 #. type: Plain text
1380 #: build/C/man2/readdir.2:127
1381 msgid "This system call does not exist on x86-64."
1382 msgstr "このシステムコールは x86-64 では存在しない。"
1383
1384 #. type: Plain text
1385 #: build/C/man2/readdir.2:130
1386 msgid "B<getdents>(2), B<readdir>(3)"
1387 msgstr "B<getdents>(2), B<readdir>(3)"
1388
1389 #. type: Plain text
1390 #: build/C/man3/readdir.3:39
1391 msgid "readdir, readdir_r - read a directory"
1392 msgstr "readdir, readdir_r - ディレクトリを読み込む"
1393
1394 #. type: Plain text
1395 #: build/C/man3/readdir.3:44
1396 #, no-wrap
1397 msgid "B<struct dirent *readdir(DIR *>I<dirp>B<);>\n"
1398 msgstr "B<struct dirent *readdir(DIR *>I<dirp>B<);>\n"
1399
1400 #. type: Plain text
1401 #: build/C/man3/readdir.3:47
1402 #, no-wrap
1403 msgid "B<int readdir_r(DIR *>I<dirp>B<, struct dirent *>I<entry>B<, struct dirent **>I<result>B<);>\n"
1404 msgstr "B<int readdir_r(DIR *>I<dirp>B<, struct dirent *>I<entry>B<, struct dirent **>I<result>B<);>\n"
1405
1406 #. type: Plain text
1407 #: build/C/man3/readdir.3:56
1408 msgid "B<readdir_r>():"
1409 msgstr "B<readdir_r>():"
1410
1411 #. type: Plain text
1412 #: build/C/man3/readdir.3:59
1413 msgid ""
1414 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1415 "|| _POSIX_SOURCE"
1416 msgstr ""
1417 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1418 "|| _POSIX_SOURCE"
1419
1420 #. type: Plain text
1421 #: build/C/man3/readdir.3:69
1422 msgid ""
1423 "The B<readdir>()  function returns a pointer to a I<dirent> structure "
1424 "representing the next directory entry in the directory stream pointed to by "
1425 "I<dirp>.  It returns NULL on reaching the end of the directory stream or if "
1426 "an error occurred."
1427 msgstr ""
1428 "B<readdir>()  関数は、I<dirp> が指すディレクトリストリームの中で、 次のディレ"
1429 "クトリエントリーを表す I<dirent> 構造体へのポインターを返す。 ディレクトリス"
1430 "トリームの末尾に達した場合や、 エラーが発生した場合は、 NULL を返す。"
1431
1432 #. type: Plain text
1433 #: build/C/man3/readdir.3:73
1434 msgid "On Linux, the I<dirent> structure is defined as follows:"
1435 msgstr "Linux では I<dirent> 構造体は以下のように定義されている。"
1436
1437 #. type: Plain text
1438 #: build/C/man3/readdir.3:84
1439 #, no-wrap
1440 msgid ""
1441 "struct dirent {\n"
1442 "    ino_t          d_ino;       /* inode number */\n"
1443 "    off_t          d_off;       /* not an offset; see NOTES */\n"
1444 "    unsigned short d_reclen;    /* length of this record */\n"
1445 "    unsigned char  d_type;      /* type of file; not supported\n"
1446 "                                   by all filesystem types */\n"
1447 "    char           d_name[256]; /* filename */\n"
1448 "};\n"
1449 msgstr ""
1450 "struct dirent {\n"
1451 "    ino_t          d_ino;       /* inode 番号 */\n"
1452 "    off_t          d_off;       /* オフセットではない; 注意を参照 */\n"
1453 "    unsigned short d_reclen;    /* このレコードの長さ */\n"
1454 "    unsigned char  d_type;      /* ファイル種別。全ファイルシステム */\n"
1455 "                                   でサポートされているわけではない */\n"
1456 "    char           d_name[256]; /* ファイル名 */\n"
1457 "};\n"
1458
1459 #. type: Plain text
1460 #: build/C/man3/readdir.3:98
1461 msgid ""
1462 "The only fields in the I<dirent> structure that are mandated by POSIX.1 are: "
1463 "I<d_name>[], of unspecified size, with at most B<NAME_MAX> characters "
1464 "preceding the terminating null byte (\\(aq\\e0\\(aq); and (as an XSI "
1465 "extension)  I<d_ino>.  The other fields are unstandardized, and not present "
1466 "on all systems; see NOTES below for some further details."
1467 msgstr ""
1468 "I<dirent> 構造体のフィールドで POSIX.1 で要求されているのは、 I<d_name>[] と "
1469 "(XSI 拡張での)  I<d_ino> だけである。 I<d_name>[] はその大きさも規定されてお"
1470 "らず、 このフィールドには最大で B<NAME_MAX> 個の文字と、それに続く終端の ヌル"
1471 "バイト (\\(aq\\e0\\(aq)が格納される。 他のフィールドは非標準であり、全てのシ"
1472 "ステムに存在するわけではない。 詳細については、下記の「注意」を参照のこと。"
1473
1474 #. type: Plain text
1475 #: build/C/man3/readdir.3:104
1476 msgid ""
1477 "The data returned by B<readdir>()  may be overwritten by subsequent calls to "
1478 "B<readdir>()  for the same directory stream."
1479 msgstr ""
1480 "B<readdir>()  によって返されるデータは、それ以降の同じストリームに対する "
1481 "B<readdir>()  の呼び出しによって上書きされる可能性がある。"
1482
1483 #. type: Plain text
1484 #: build/C/man3/readdir.3:119
1485 msgid ""
1486 "The B<readdir_r>()  function is a reentrant version of B<readdir>().  It "
1487 "reads the next directory entry from the directory stream I<dirp>, and "
1488 "returns it in the caller-allocated buffer pointed to by I<entry>.  (See "
1489 "NOTES for information on allocating this buffer.)  A pointer to the returned "
1490 "item is placed in I<*result>; if the end of the directory stream was "
1491 "encountered, then NULL is instead returned in I<*result>."
1492 msgstr ""
1493 "B<readdir_r>()  関数は B<readdir>()  のリエントラント版である。 この関数は"
1494 "ディレクトリストリーム I<dirp> から次のディレクトリエントリーを読み込み、 "
1495 "I<entry> が指す呼び出し元が割り当てたバッファーにそのエントリーを格納して返"
1496 "す (このバッファーの割り当てについては「注意」の節を参照のこと)。 返されるエ"
1497 "ントリーへのポインターが I<*result> に格納される。ディレクトリストリームの末"
1498 "尾に達した場合は、 NULL が I<*result> に格納される。"
1499
1500 #. type: Plain text
1501 #: build/C/man3/readdir.3:134
1502 msgid ""
1503 "On success, B<readdir>()  returns a pointer to a I<dirent> structure.  (This "
1504 "structure may be statically allocated; do not attempt to B<free>(3)  it.)  "
1505 "If the end of the directory stream is reached, NULL is returned and I<errno> "
1506 "is not changed.  If an error occurs, NULL is returned and I<errno> is set "
1507 "appropriately."
1508 msgstr ""
1509 "成功すると、 B<readdir>()  は I<dirent> 構造体へのポインターを返す。 (この構"
1510 "造体は静的に割り当てられているかもしれない。 このポインターを B<free>(3)  し"
1511 "ようとしないこと。)  ディレクトリストリームの末尾に達した場合には、NULL が返"
1512 "され、 I<errno> は変化しない。 エラーが発生した場合、NULL が返され、 "
1513 "I<errno> が適切に設定される。"
1514
1515 #. type: Plain text
1516 #: build/C/man3/readdir.3:143
1517 msgid ""
1518 "The B<readdir_r>()  function returns 0 on success.  On error, it returns a "
1519 "positive error number (listed under ERRORS).  If the end of the directory "
1520 "stream is reached, B<readdir_r>()  returns 0, and returns NULL in I<*result>."
1521 msgstr ""
1522 "成功すると、 B<readdir_r>()  関数は 0 を返す。 エラーの場合、(「エラー」の節"
1523 "のリストに載っている) 正のエラー番号を返す。 ディレクトリストリームの末尾に達"
1524 "した場合、 B<readdir_r>()  は返り値として 0 を返し、 I<*result> に NULL を格"
1525 "納する。"
1526
1527 #. type: Plain text
1528 #: build/C/man3/readdir.3:152
1529 msgid "The B<readdir>()  function is not thread-safe."
1530 msgstr "B<readdir>() 関数はスレッドセーフではない。"
1531
1532 #. type: Plain text
1533 #: build/C/man3/readdir.3:156
1534 msgid "The B<readdir_r>()  function is thread-safe."
1535 msgstr "B<readdir_r>() 関数はスレッドセーフである。"
1536
1537 #. type: Plain text
1538 #: build/C/man3/readdir.3:158 build/C/man3/rewinddir.3:60
1539 msgid "SVr4, 4.3BSD, POSIX.1-2001."
1540 msgstr "SVr4, 4.3BSD, POSIX.1-2001."
1541
1542 #. type: Plain text
1543 #: build/C/man3/readdir.3:174
1544 msgid ""
1545 "Only the fields I<d_name> and I<d_ino> are specified in POSIX.1-2001.  The "
1546 "remaining fields are available on many, but not all systems.  Under glibc, "
1547 "programs can check for the availability of the fields not defined in POSIX.1 "
1548 "by testing whether the macros B<_DIRENT_HAVE_D_NAMLEN>, "
1549 "B<_DIRENT_HAVE_D_RECLEN>, B<_DIRENT_HAVE_D_OFF>, or B<_DIRENT_HAVE_D_TYPE> "
1550 "are defined."
1551 msgstr ""
1552 "フィールド I<d_name> と I<d_ino> だけが POSIX.1-2001 で規定されている。 残り"
1553 "のフィールドは多くのシステムに存在するが、全てのシステムに 存在するわけではな"
1554 "い。 glibc では、プログラムが POSIX.1 で定義されていないフィールドが 利用でき"
1555 "るかをチェックすることができる。 チェックするには、マクロ "
1556 "B<_DIRENT_HAVE_D_NAMLEN>, B<_DIRENT_HAVE_D_RECLEN>, B<_DIRENT_HAVE_D_OFF>, "
1557 "B<_DIRENT_HAVE_D_TYPE> が定義されているかをテストすればよい。"
1558
1559 #.  https://lwn.net/Articles/544298/
1560 #. type: Plain text
1561 #: build/C/man3/readdir.3:187
1562 msgid ""
1563 "The value returned in I<d_off> is the same as would be returned by calling "
1564 "B<telldir>(3)  at the current position in the directory stream.  Be aware "
1565 "that despite its type and name, the I<d_off> field is seldom any kind of "
1566 "directory offset on modern filesystems.  Applications should treat this "
1567 "field as an opaque value, making no assumptions about its contents; see also "
1568 "B<telldir>(3)."
1569 msgstr ""
1570 "I<d_off> で返される値は B<telldir>(3) が返す値と同じで、ディレクトリストリー"
1571 "ム内の現在の位置を示す。\n"
1572 "フィールドの型や名前はこうなっていますが、最近のファイルシステムでは "
1573 "I<d_off> フィールドが何らかのディレクトリオフセットであることはめったいにな"
1574 "い。アプリケーションプログラムでは、必ずこの値を内容を意識せず単なる値として"
1575 "扱うべきであり、その内容について前提を持つべきではない。"
1576
1577 #. type: Plain text
1578 #: build/C/man3/readdir.3:200
1579 msgid ""
1580 "Other than Linux, the I<d_type> field is available mainly only on BSD "
1581 "systems.  This field makes it possible to avoid the expense of calling "
1582 "B<lstat>(2)  if further actions depend on the type of the file.  If the "
1583 "B<_BSD_SOURCE> feature test macro is defined, then glibc defines the "
1584 "following macro constants for the value returned in I<d_type>:"
1585 msgstr ""
1586 "I<d_type> フィールドは、Linux 以外では、 主に BSD 系のシステムにだけ存在す"
1587 "る。 このフィールドを使うと、 その後の動作がファイルの種別により決まる場合"
1588 "に、 B<lstat>(2)  を呼び出すコストを避けることができる。 機能検査マクロ "
1589 "B<_BSD_SOURCE> が定義された場合、glibc は I<d_type> で返される値として以下の"
1590 "マクロ定数を定義する。"
1591
1592 #. type: Plain text
1593 #: build/C/man3/readdir.3:231
1594 msgid ""
1595 "If the file type could not be determined, the value B<DT_UNKNOWN> is "
1596 "returned in I<d_type>."
1597 msgstr ""
1598 "ファイル種別を決定できなかった場合には、 I<d_type> に B<DT_UNKNOWN> が入る。"
1599
1600 #. type: Plain text
1601 #: build/C/man3/readdir.3:250
1602 msgid ""
1603 "Since POSIX.1 does not specify the size of the I<d_name> field, and other "
1604 "nonstandard fields may precede that field within the I<dirent> structure, "
1605 "portable applications that use B<readdir_r>()  should allocate the buffer "
1606 "whose address is passed in I<entry> as follows:"
1607 msgstr ""
1608 "POSIX.1 では I<d_name> フィールドのサイズは規定されておらず、 I<dirent> 構造"
1609 "体の I<d_name> の後ろに他の非標準のフィールドがあるかもしれないので、 移植性"
1610 "が必要なアプリケーションで B<readdir_r>()  を使う場合は I<entry> に渡すバッ"
1611 "ファーを次のようにして割り当てるべきである。"
1612
1613 #. type: Plain text
1614 #: build/C/man3/readdir.3:258
1615 #, no-wrap
1616 msgid ""
1617 "name_max = pathconf(dirpath, _PC_NAME_MAX);\n"
1618 "if (name_max == -1)         /* Limit not defined, or error */\n"
1619 "    name_max = 255;         /* Take a guess */\n"
1620 "len = offsetof(struct dirent, d_name) + name_max + 1;\n"
1621 "entryp = malloc(len);\n"
1622 msgstr ""
1623 "name_max = pathconf(dirpath, _PC_NAME_MAX);\n"
1624 "if (name_max == -1)         /* 上限が定義されていない、またはエラー */\n"
1625 "    name_max = 255;         /* 適当な値を入れる */\n"
1626 "len = offsetof(struct dirent, d_name) + name_max + 1;\n"
1627 "entryp = malloc(len);\n"
1628
1629 #. type: Plain text
1630 #: build/C/man3/readdir.3:265
1631 msgid ""
1632 "(POSIX.1 requires that I<d_name> is the last field in a I<struct dirent>.)"
1633 msgstr ""
1634 "(POSIX.1 では I<struct dirent> の最後のフィールドが I<d_name> であることを要"
1635 "求している。)"
1636
1637 #. type: Plain text
1638 #: build/C/man3/readdir.3:277
1639 msgid ""
1640 "B<getdents>(2), B<read>(2), B<closedir>(3), B<dirfd>(3), B<ftw>(3), "
1641 "B<offsetof>(3), B<opendir>(3), B<rewinddir>(3), B<scandir>(3), "
1642 "B<seekdir>(3), B<telldir>(3)"
1643 msgstr ""
1644 "B<getdents>(2), B<read>(2), B<closedir>(3), B<dirfd>(3), B<ftw>(3), "
1645 "B<offsetof>(3), B<opendir>(3), B<rewinddir>(3), B<scandir>(3), "
1646 "B<seekdir>(3), B<telldir>(3)"
1647
1648 #. type: TH
1649 #: build/C/man3/rewinddir.3:31
1650 #, no-wrap
1651 msgid "REWINDDIR"
1652 msgstr "REWINDDIR"
1653
1654 #. type: TH
1655 #: build/C/man3/rewinddir.3:31 build/C/man3/telldir.3:30
1656 #, no-wrap
1657 msgid "2013-09-02"
1658 msgstr "2013-09-02"
1659
1660 #. type: Plain text
1661 #: build/C/man3/rewinddir.3:34
1662 msgid "rewinddir - reset directory stream"
1663 msgstr "rewinddir - ディレクトリストリームの初期化"
1664
1665 #. type: Plain text
1666 #: build/C/man3/rewinddir.3:41
1667 #, no-wrap
1668 msgid "B<void rewinddir(DIR *>I<dirp>B<);>\n"
1669 msgstr "B<void rewinddir(DIR *>I<dirp>B<);>\n"
1670
1671 #. type: Plain text
1672 #: build/C/man3/rewinddir.3:49
1673 msgid ""
1674 "The B<rewinddir>()  function resets the position of the directory stream "
1675 "I<dirp> to the beginning of the directory."
1676 msgstr ""
1677 "B<rewinddir>()  関数は、ディレクトリストリーム I<dirp> の位置を ディレクトリ"
1678 "の先頭に初期化する。"
1679
1680 #. type: Plain text
1681 #: build/C/man3/rewinddir.3:53
1682 msgid "The B<rewinddir>()  function returns no value."
1683 msgstr "B<rewinddir>()  関数は、値を返さない。"
1684
1685 #. type: Plain text
1686 #: build/C/man3/rewinddir.3:58
1687 msgid "The B<rewinddir>()  function is thread-safe."
1688 msgstr "B<rewinddir>() 関数はスレッドセーフである。"
1689
1690 #. type: Plain text
1691 #: build/C/man3/rewinddir.3:67
1692 msgid ""
1693 "B<closedir>(3), B<opendir>(3), B<readdir>(3), B<scandir>(3), B<seekdir>(3), "
1694 "B<telldir>(3)"
1695 msgstr ""
1696 "B<closedir>(3), B<opendir>(3), B<readdir>(3), B<scandir>(3), B<seekdir>(3), "
1697 "B<telldir>(3)"
1698
1699 #. type: TH
1700 #: build/C/man3/scandir.3:62
1701 #, no-wrap
1702 msgid "SCANDIR"
1703 msgstr "SCANDIR"
1704
1705 #. type: TH
1706 #: build/C/man3/scandir.3:62
1707 #, no-wrap
1708 msgid "2014-05-28"
1709 msgstr "2014-05-28"
1710
1711 #. type: Plain text
1712 #: build/C/man3/scandir.3:66
1713 msgid ""
1714 "scandir, scandirat, alphasort, versionsort - scan a directory for matching "
1715 "entries"
1716 msgstr "scandir, scandirat, alphasort, versionsort - ディレクトリを走査する"
1717
1718 #. type: Plain text
1719 #: build/C/man3/scandir.3:71
1720 #, no-wrap
1721 msgid "B<int scandir(const char *>I<dirp>B<, struct dirent ***>I<namelist>B<,>\n"
1722 msgstr "B<int scandir(const char *>I<dirp>B<, struct dirent ***>I<namelist>B<,>\n"
1723
1724 #. type: Plain text
1725 #: build/C/man3/scandir.3:74 build/C/man3/scandir.3:90
1726 #, no-wrap
1727 msgid ""
1728 "B<int (*>I<filter>B<)(const struct dirent *),>\n"
1729 "B<int (*>I<compar>B<)(const struct dirent **, const struct dirent **));>\n"
1730 msgstr ""
1731 "B<int (*>I<filter>B<)(const struct dirent *),>\n"
1732 "B<int (*>I<compar>B<)(const struct dirent **, const struct dirent **));>\n"
1733
1734 #. type: Plain text
1735 #: build/C/man3/scandir.3:77
1736 #, no-wrap
1737 msgid "B<int alphasort(const struct dirent **>I<a>B<, const struct dirent **>I<b>B<);>\n"
1738 msgstr "B<int alphasort(const struct dirent **>I<a>B<, const struct dirent **>I<b>B<);>\n"
1739
1740 #. type: Plain text
1741 #: build/C/man3/scandir.3:79
1742 #, no-wrap
1743 msgid "B<int versionsort(const struct dirent **>I<a>B<, const struct dirent **>I<b>B<);>\n"
1744 msgstr "B<int versionsort(const struct dirent **>I<a>B<, const struct dirent **>I<b>B<);>\n"
1745
1746 #. type: Plain text
1747 #: build/C/man3/scandir.3:82
1748 #, no-wrap
1749 msgid ""
1750 "B<#include E<lt>fcntl.hE<gt>>          /* Definition of AT_* constants */\n"
1751 "B<#include E<lt>dirent.hE<gt>>\n"
1752 msgstr ""
1753 "B<#include E<lt>fcntl.hE<gt>>          /* AT_* 定数の定義 */\n"
1754 "B<#include E<lt>dirent.hE<gt>>\n"
1755
1756 #. type: Plain text
1757 #: build/C/man3/scandir.3:86
1758 msgid ""
1759 "B<int scandirat(int >I<dirfd>B<, const char *>I<dirp>B<,> B<struct dirent "
1760 "***>I<namelist>B<,>"
1761 msgstr ""
1762 "B<int scandirat(int >I<dirfd>B<, const char *>I<dirp>B<,> B<struct dirent "
1763 "***>I<namelist>B<,>"
1764
1765 #. type: Plain text
1766 #: build/C/man3/scandir.3:100
1767 msgid "B<scandir>(), B<alphasort>():"
1768 msgstr "B<scandir>(), B<alphasort>():"
1769
1770 #. type: Plain text
1771 #: build/C/man3/scandir.3:115
1772 msgid "B<versionsort>(): _GNU_SOURCE"
1773 msgstr "B<versionsort>(): _GNU_SOURCE"
1774
1775 #. type: Plain text
1776 #: build/C/man3/scandir.3:118
1777 msgid "B<scandirat>(): _GNU_SOURCE"
1778 msgstr "B<scandirat>(): _GNU_SOURCE"
1779
1780 #. type: Plain text
1781 #: build/C/man3/scandir.3:133
1782 msgid ""
1783 "The B<scandir>()  function scans the directory I<dirp>, calling I<filter>() "
1784 "on each directory entry.  Entries for which I<filter>() returns nonzero are "
1785 "stored in strings allocated via B<malloc>(3), sorted using B<qsort>(3)  with "
1786 "the comparison function I<compar>(), and collected in array I<namelist> "
1787 "which is allocated via B<malloc>(3).  If I<filter> is NULL, all entries are "
1788 "selected."
1789 msgstr ""
1790 "関数 B<scandir>()  はディレクトリ I<dirp> を走査し、 ディレクトリの各エント"
1791 "リーを引き数として B<filter>()  を呼び出す。 B<filter>()  が 0 以外の値を返す"
1792 "エントリーは B<malloc>(3)  によって 確保された文字列に保存され、比較関数 "
1793 "B<compar>()  を用いて B<qsort>(3)  によりソートされ、 B<malloc>(3)  により確"
1794 "保された配列 I<namelist> にまとめられる。 I<filter> が NULL ならば、すべての"
1795 "エントリーが選択される。"
1796
1797 #. type: Plain text
1798 #: build/C/man3/scandir.3:145
1799 msgid ""
1800 "The B<alphasort>()  and B<versionsort>()  functions can be used as the "
1801 "comparison function I<compar>().  The former sorts directory entries using "
1802 "B<strcoll>(3), the latter using B<strverscmp>(3)  on the strings I<(*a)-"
1803 "E<gt>d_name> and I<(*b)-E<gt>d_name>."
1804 msgstr ""
1805 "比較関数 I<compar>()  には B<alphasort>()  関数と B<versionsort>()  関数を使"
1806 "うことができる。 B<alphasort>()  は B<strcoll>(3)  を用いてディレクトリエント"
1807 "リーをソートし、 B<versionsort>()  は文字列 I<(*a)-E<gt>d_name> と I<(*b)-"
1808 "E<gt>d_name> に対して B<strverscmp>(3)  を用いる。"
1809
1810 #. type: SS
1811 #: build/C/man3/scandir.3:145
1812 #, no-wrap
1813 msgid "scandirat()"
1814 msgstr "scandirat()"
1815
1816 #. type: Plain text
1817 #: build/C/man3/scandir.3:151
1818 msgid ""
1819 "The B<scandirat>()  function operates in exactly the same way as "
1820 "B<scandir>(), except for the differences described here."
1821 msgstr ""
1822 "B<scandirat>() 関数は B<scandir>() と全く同様の動作をする。差分についてはここ"
1823 "で説明する。"
1824
1825 #. type: Plain text
1826 #: build/C/man3/scandir.3:161
1827 msgid ""
1828 "If the pathname given in I<dirp> is relative, then it is interpreted "
1829 "relative to the directory referred to by the file descriptor I<dirfd> "
1830 "(rather than relative to the current working directory of the calling "
1831 "process, as is done by B<scandir>()  for a relative pathname)."
1832 msgstr ""
1833 "I<dirp> で指定されたパス名が相対パスの場合、ファイルディスクリプター "
1834 "I<dirfd> が参照するディレクトリからの相対パスと解釈される (これに対して、"
1835 "B<scandir>() の場合は、相対パス名は、呼び出したプロセスのカレントワーキング"
1836 "ディレクトリからの相対パスと解釈される)。"
1837
1838 #. type: Plain text
1839 #: build/C/man3/scandir.3:173
1840 msgid ""
1841 "If I<dirp> is relative and I<dirfd> is the special value B<AT_FDCWD>, then "
1842 "I<dirp> is interpreted relative to the current working directory of the "
1843 "calling process (like B<scandir>())."
1844 msgstr ""
1845 "I<dirp> が相対パスで I<dirfd> が特別な値 B<AT_FDCWD> の場合、 I<dirp> は "
1846 "(B<scandir>() と同様に) 呼び出したプロセスのカレントワーキングディレクトリか"
1847 "らの相対パスと解釈される。"
1848
1849 #. type: Plain text
1850 #: build/C/man3/scandir.3:179
1851 msgid "If I<dirp> is absolute, then I<dirfd> is ignored."
1852 msgstr "I<dirp> が絶対パスの場合、I<dirfd> は無視される。"
1853
1854 #. type: Plain text
1855 #: build/C/man3/scandir.3:184
1856 msgid "See B<openat>(2)  for an explanation of the need for B<scandirat>()."
1857 msgstr "B<scandirat>() が必要な理由については B<openat>(2) を参照すること。"
1858
1859 #. type: Plain text
1860 #: build/C/man3/scandir.3:192
1861 msgid ""
1862 "The B<scandir>()  function returns the number of directory entries "
1863 "selected.  On error, -1 is returned, with I<errno> set to indicate the cause "
1864 "of the error."
1865 msgstr ""
1866 "B<scandir>() 関数は、選択されたディレクトリのエントリー数を返す。 エラーの場"
1867 "合、 -1 を返し、 I<errno> にエラーの原因を示す値を設定する。"
1868
1869 #. type: Plain text
1870 #: build/C/man3/scandir.3:200
1871 msgid ""
1872 "The B<alphasort>()  and B<versionsort>()  functions return an integer less "
1873 "than, equal to, or greater than zero if the first argument is considered to "
1874 "be respectively less than, equal to, or greater than the second."
1875 msgstr ""
1876 "関数 B<alphasort>()  と B<versionsort>()  は 1 番目の引き数が 2 番目の引き数"
1877 "に対して、 [小さい/等しい/大きい] かに応じて、0 より [小さい/等しい/大きい] "
1878 "値を返す。"
1879
1880 #. type: Plain text
1881 #: build/C/man3/scandir.3:204
1882 msgid "The path in I<dirp> does not exist."
1883 msgstr "I<dirp> で指定されたパスが存在しない。"
1884
1885 #. type: Plain text
1886 #: build/C/man3/scandir.3:210
1887 msgid "The path in I<dirp> is not a directory."
1888 msgstr "I<dirp> で指定されたパスがディレクトリではない。"
1889
1890 #. type: Plain text
1891 #: build/C/man3/scandir.3:213
1892 msgid "The following additional errors can occur for B<scandirat>():"
1893 msgstr "B<scandirat>() では追加で以下のエラーも発生する:"
1894
1895 #. type: Plain text
1896 #: build/C/man3/scandir.3:217
1897 msgid "I<dirfd> is not a valid file descriptor."
1898 msgstr "I<dirfd> が有効なファイルディスクリプターではない。"
1899
1900 #. type: Plain text
1901 #: build/C/man3/scandir.3:223
1902 msgid ""
1903 "I<dirp> is a relative path and I<dirfd> is a file descriptor referring to a "
1904 "file other than a directory."
1905 msgstr ""
1906 "I<dirp> が相対パスで、I<dirfd> がディレクトリ以外のファイルを参照している\n"
1907 "ファイルディスクリプターである。"
1908
1909 #. type: Plain text
1910 #: build/C/man3/scandir.3:226
1911 msgid "B<versionsort>()  was added to glibc in version 2.1."
1912 msgstr "B<versionsort>()  は、glibc バージョン 2.1 で追加された。"
1913
1914 #. type: Plain text
1915 #: build/C/man3/scandir.3:229
1916 msgid "B<scandirat>()  was added to glibc in version 2.15."
1917 msgstr "B<scandirat>()  は glibc バージョン 2.15 で追加された。"
1918
1919 #. type: Plain text
1920 #: build/C/man3/scandir.3:233
1921 msgid "B<alphasort>(), B<scandir>(): 4.3BSD, POSIX.1-2008."
1922 msgstr "B<alphasort>(), B<scandir>(): 4.3BSD, POSIX.1-2008."
1923
1924 #.  .LP
1925 #.  The functions
1926 #.  .BR scandir ()
1927 #.  and
1928 #.  .BR alphasort ()
1929 #.  are from 4.3BSD, and have been available under Linux since libc4.
1930 #.  Libc4 and libc5 use the more precise prototype
1931 #.  .sp
1932 #.  .nf
1933 #.     int alphasort(const struct dirent ** a,
1934 #.                   const struct dirent **b);
1935 #.  .fi
1936 #.  .sp
1937 #.  but glibc 2.0 returns to the imprecise BSD prototype.
1938 #. type: Plain text
1939 #: build/C/man3/scandir.3:252
1940 msgid "B<versionsort>()  and B<scandirat>()  are GNU extensions."
1941 msgstr "B<versionsort>() と B<scandirat>() は GNU 拡張である。"
1942
1943 #. type: Plain text
1944 #: build/C/man3/scandir.3:259
1945 msgid ""
1946 "Since glibc 2.1, B<alphasort>()  calls B<strcoll>(3); earlier it used "
1947 "B<strcmp>(3)."
1948 msgstr ""
1949 "glibc 2.1 以降では B<alphasort>()  は B<strcoll>(3)  を呼び出す。 "
1950 "B<alphasort>()  は以前は B<strcmp>(3)  を使っていた。"
1951
1952 #. type: Plain text
1953 #: build/C/man3/scandir.3:264
1954 #, no-wrap
1955 msgid ""
1956 "#define _SVID_SOURCE\n"
1957 "/* print files in current directory in reverse order */\n"
1958 "#include E<lt>dirent.hE<gt>\n"
1959 msgstr ""
1960 "#define _SVID_SOURCE\n"
1961 "/* カレントディレクトリのファイルを逆順に出力する */\n"
1962 "#include E<lt>dirent.hE<gt>\n"
1963
1964 #. type: Plain text
1965 #: build/C/man3/scandir.3:270
1966 #, no-wrap
1967 msgid ""
1968 "int\n"
1969 "main(void)\n"
1970 "{\n"
1971 "    struct dirent **namelist;\n"
1972 "    int n;\n"
1973 msgstr ""
1974 "int\n"
1975 "main(void)\n"
1976 "{\n"
1977 "    struct dirent **namelist;\n"
1978 "    int n;\n"
1979
1980 #. type: Plain text
1981 #: build/C/man3/scandir.3:282
1982 #, no-wrap
1983 msgid ""
1984 "    n = scandir(\".\", &namelist, NULL, alphasort);\n"
1985 "    if (n E<lt> 0)\n"
1986 "        perror(\"scandir\");\n"
1987 "    else {\n"
1988 "        while (n--) {\n"
1989 "            printf(\"%s\\en\", namelist[n]-E<gt>d_name);\n"
1990 "            free(namelist[n]);\n"
1991 "        }\n"
1992 "        free(namelist);\n"
1993 "    }\n"
1994 "}\n"
1995 msgstr ""
1996 "    n = scandir(\".\", &namelist, NULL, alphasort);\n"
1997 "    if (n E<lt> 0)\n"
1998 "        perror(\"scandir\");\n"
1999 "    else {\n"
2000 "        while (n--) {\n"
2001 "            printf(\"%s\\en\", namelist[n]-E<gt>d_name);\n"
2002 "            free(namelist[n]);\n"
2003 "        }\n"
2004 "        free(namelist);\n"
2005 "    }\n"
2006 "}\n"
2007
2008 #. type: Plain text
2009 #: build/C/man3/scandir.3:294
2010 msgid ""
2011 "B<closedir>(3), B<fnmatch>(3), B<opendir>(3), B<readdir>(3), "
2012 "B<rewinddir>(3), B<seekdir>(3), B<strcmp>(3), B<strcoll>(3), "
2013 "B<strverscmp>(3), B<telldir>(3)"
2014 msgstr ""
2015 "B<closedir>(3), B<fnmatch>(3), B<opendir>(3), B<readdir>(3), "
2016 "B<rewinddir>(3), B<seekdir>(3), B<strcmp>(3), B<strcoll>(3), "
2017 "B<strverscmp>(3), B<telldir>(3)"
2018
2019 #. type: TH
2020 #: build/C/man3/seekdir.3:31
2021 #, no-wrap
2022 msgid "SEEKDIR"
2023 msgstr "SEEKDIR"
2024
2025 #. type: TH
2026 #: build/C/man3/seekdir.3:31
2027 #, no-wrap
2028 msgid "2013-09-09"
2029 msgstr "2013-09-09"
2030
2031 #. type: Plain text
2032 #: build/C/man3/seekdir.3:35
2033 msgid ""
2034 "seekdir - set the position of the next readdir() call in the directory "
2035 "stream."
2036 msgstr ""
2037 "seekdir - 次の readdir() 呼び出しのために、ディレクトリストリーム中の位置を "
2038 "設定する"
2039
2040 #. type: Plain text
2041 #: build/C/man3/seekdir.3:40
2042 #, no-wrap
2043 msgid "B<void seekdir(DIR *>I<dirp>B<, long >I<loc>B<);>\n"
2044 msgstr "B<void seekdir(DIR *>I<dirp>B<, long >I<loc>B<);>\n"
2045
2046 #. type: Plain text
2047 #: build/C/man3/seekdir.3:49
2048 msgid "B<seekdir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
2049 msgstr "B<seekdir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
2050
2051 #. type: Plain text
2052 #: build/C/man3/seekdir.3:60
2053 msgid ""
2054 "The B<seekdir>()  function sets the location in the directory stream from "
2055 "which the next B<readdir>(2)  call will start.  The I<loc> argument should "
2056 "be a value returned by a previous call to B<telldir>(3)."
2057 msgstr ""
2058 "B<seekdir>()  関数は、次の B<readdir>(3)  呼び出しの開始位置である、 ディレク"
2059 "トリストリームの中での位置を設定する。 I<loc> 引き数には、それ以前の "
2060 "B<telldir>(3) の呼び出しで返された値を渡すべきである。"
2061
2062 #. type: Plain text
2063 #: build/C/man3/seekdir.3:64
2064 msgid "The B<seekdir>()  function returns no value."
2065 msgstr "B<seekdir>()  関数は、値を返さない。"
2066
2067 #. type: Plain text
2068 #: build/C/man3/seekdir.3:69
2069 msgid "The B<seekdir>()  function is thread-safe."
2070 msgstr "B<seekdir>() 関数はスレッドセーフである。"
2071
2072 #. type: Plain text
2073 #: build/C/man3/seekdir.3:71 build/C/man3/telldir.3:71
2074 msgid "4.3BSD, POSIX.1-2001."
2075 msgstr "4.3BSD, POSIX.1-2001."
2076
2077 #. type: Plain text
2078 #: build/C/man3/seekdir.3:83
2079 msgid ""
2080 "In glibc up to version 2.1.1, the type of the I<loc> argument was I<off_t>.  "
2081 "POSIX.1-2001 specifies I<long>, and this is the type used since glibc "
2082 "2.1.2.  See B<telldir>(3)  for information on why you should be careful in "
2083 "making any assumptions about the value in this argument."
2084 msgstr ""
2085 "バージョン 2.1.1 以前の glibc では、 I<loc> 引き数の型は I<off_t> であった。 "
2086 "POSIX.1-2001 では I<long> と規定されており、glibc 2.1.2 以降では I<long> に"
2087 "なっている。この引き数の値に前提を置く際には気を付けないといけない理由につい"
2088 "ては B<telldir>(3) を参照のこと。"
2089
2090 #. type: Plain text
2091 #: build/C/man3/seekdir.3:91
2092 msgid ""
2093 "B<lseek>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
2094 "B<scandir>(3), B<telldir>(3)"
2095 msgstr ""
2096 "B<lseek>(2), B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
2097 "B<scandir>(3), B<telldir>(3)"
2098
2099 #. type: TH
2100 #: build/C/man3/telldir.3:30
2101 #, no-wrap
2102 msgid "TELLDIR"
2103 msgstr "TELLDIR"
2104
2105 #. type: Plain text
2106 #: build/C/man3/telldir.3:33
2107 msgid "telldir - return current location in directory stream"
2108 msgstr "telldir - ディレクトリストリーム中の現在位置を返す"
2109
2110 #. type: Plain text
2111 #: build/C/man3/telldir.3:38
2112 #, no-wrap
2113 msgid "B<long telldir(DIR *>I<dirp>B<);>\n"
2114 msgstr "B<long telldir(DIR *>I<dirp>B<);>\n"
2115
2116 #. type: Plain text
2117 #: build/C/man3/telldir.3:47
2118 msgid "B<telldir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
2119 msgstr "B<telldir>(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE"
2120
2121 #. type: Plain text
2122 #: build/C/man3/telldir.3:52
2123 msgid ""
2124 "The B<telldir>()  function returns the current location associated with the "
2125 "directory stream I<dirp>."
2126 msgstr ""
2127 "B<telldir>()  関数は、ディレクトリストリーム I<dirp> に結びつけられた 現在位"
2128 "置を返す。"
2129
2130 #. type: Plain text
2131 #: build/C/man3/telldir.3:60
2132 msgid ""
2133 "On success, the B<telldir>()  function returns the current location in the "
2134 "directory stream.  On error, -1 is returned, and I<errno> is set "
2135 "appropriately."
2136 msgstr ""
2137 "成功した場合、 B<telldir>()  関数はディレクトリストリーム中の現在位置を返"
2138 "す。 エラーの場合、-1 が返されて、 I<errno> が適切に設定される。"
2139
2140 #. type: Plain text
2141 #: build/C/man3/telldir.3:69
2142 msgid "The B<telldir>()  function is thread-safe."
2143 msgstr "B<telldir>() 関数はスレッドセーフである。"
2144
2145 #. type: Plain text
2146 #: build/C/man3/telldir.3:79
2147 msgid ""
2148 "In glibc up to version 2.1.1, the return type of B<telldir>()  was "
2149 "I<off_t>.  POSIX.1-2001 specifies I<long>, and this is the type used since "
2150 "glibc 2.1.2."
2151 msgstr ""
2152 "バージョン 2.1.1 以前の glibc では、 B<telldir>()9 の返り値の型は I<off_t> で"
2153 "あった。 POSIX.1-2001 では I<long> と規定されており、glibc 2.1.2 以降では "
2154 "I<long> になっている。"
2155
2156 #.  https://lwn.net/Articles/544298/
2157 #. type: Plain text
2158 #: build/C/man3/telldir.3:95
2159 msgid ""
2160 "In early filesystems, the value returned by B<telldir>()  was a simple file "
2161 "offset within a directory.  Modern filesystems use tree or hash structures, "
2162 "rather than flat tables, to represent directories.  On such filesystems, the "
2163 "value returned by B<telldir>()  (and used internally by B<readdir>(3))  is a "
2164 "\"cookie\" that is used by the implementation to derive a position within a "
2165 "directory.  Application programs should treat this strictly as an opaque "
2166 "value, making I<no> assumptions about its contents."
2167 msgstr ""
2168 "初期のファイルシステムでは、 B<telldir>() が返す値は単なるディレクトリ内の"
2169 "ファイルオフセットであった。新しめのファイルシステムでは、ディレクトリを表現"
2170 "するのに、フラットなテーブルではなく、ツリーやハッシュ構造が使用されている。"
2171 "このようなファイルシステムでは、 B<telldir>() が返す値 (および B<readdir>(3) "
2172 "が内部で使用する値) は、ディレクトリ内での値を示すのにファイルシステム実装が"
2173 "使っている \"cookie\" となる。アプリケーションプログラムでは、必ずこの値を内"
2174 "容を意識せず単なる値として扱うべきであり、その内容について前提を持つべきでは"
2175 "「ない」。"
2176
2177 #. type: Plain text
2178 #: build/C/man3/telldir.3:102
2179 msgid ""
2180 "B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
2181 "B<scandir>(3), B<seekdir>(3)"
2182 msgstr ""
2183 "B<closedir>(3), B<opendir>(3), B<readdir>(3), B<rewinddir>(3), "
2184 "B<scandir>(3), B<seekdir>(3)"