OSDN Git Service

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