FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.3-RELEASE-K, 13.0-RELEASE-K から 13.2-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | ライブラリ | 書式 | 解説 | 関連項目 | 歴史 | バグ
DIRECTORY(3)           FreeBSD ライブラリ関数マニュアル           DIRECTORY(3)

名称
     opendir, fdopendir, readdir, readdir_r, telldir, seekdir, rewinddir,
     closedir, fdclosedir, dirfd -- ディレクトリ操作

ライブラリ
     標準 C ライブラリ (libc, -lc)

書式
     #include <dirent.h>

     DIR *
     opendir(const char *filename);

     DIR *
     fdopendir(int fd);

     struct dirent *
     readdir(DIR *dirp);

     int
     readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);

     long
     telldir(DIR *dirp);

     void
     seekdir(DIR *dirp, long loc);

     void
     rewinddir(DIR *dirp);

     int
     closedir(DIR *dirp);

     int
     fdclosedir(DIR *dirp);

     int
     dirfd(DIR *dirp);

解説
     readdir_r() インタフェースは、{NAME_MAX} が、固定された値ではないので、そ
     れを正しく使用することができないので、推奨されません。

     opendir() 関数は、filename によって指定されたディレクトリをオープンし、
     ディレクトリストリームをそれに関連付けし、続く操作でディレクトリストリー
     ムを識別するために使用されるポインタを返します。filename にアクセスするこ
     とができないか、またはすべてのものを保持するために十分なメモリを
     malloc(3) することができないなら、ポインタ NULL が返されます。

     fdopendir() 関数は、ディレクトリが名前でなくファイル記述子 fd によって指
     定されることを除いて、opendir() 関数と同等です。呼び出し時点でファイル記
     述子に関連しているファイルオフセットは、どのエントリが返されるかを決定し
     ます。

     fdopendir() から成功して返るときに、ファイル記述子がシステムの制御の下に
     あり、ファイル記述子をクローズするか、または closedir(), readdir(),
     readdir_r() または rewinddir() を用いる以外の関連記述の状態を変更するなん
     らかの試みが行われるなら、振る舞いは、未定義です。closedir() を呼び出すと
     き、ファイル記述子は、クローズされます。FD_CLOEXEC フラグは、fdopendir()
     への成功した呼び出しによってファイル記述子で設定されます。

     readdir() 関数は、次のディレクトリエントリへのポインタを返します。ディレ
     クトリエントリは、同じディレクトリストリームで、readdir() または
     closedir() への次の呼び出しまで有効であり続けます。関数は、ディレクトリの
     終わりに達するか、またはエラーで NULL を返します。エラーのイベントで、
     errno は、getdirentries(2) システムコールのための文書化された値のいずれか
     が設定されます。

     readdir_r() 関数は、readdir() と同じ機能を提供しますが、呼び出し側は、結
     果を格納するためのディレクトリ entry バッファを提供しなければなりません。
     バッファは、{NAME_MAX} +1 の要素がある d_name 配列で struct dirent のため
     に十分に大きくなければなりません。読み込みが成功するなら、result は、
     entry を指します。ディレクトリの終りに到着するとき、result は、NULL に設
     定されます。readdir_r() 関数は、成功すれば、0 を返すか、または失敗を示す
     ためにエラー番号を返します。

     telldir() 関数は、指定されたディレクトリストリームに関連した現在の位置を
     表わすトークンを返します。telldir() によって返された値は、それらに由来す
     る DIR ポインタ dirp の存続期間のみ有効です。ディレクトリがクローズされ、
     次に、再オープンされるなら、telldir() によって返された以前の値は、もはや
     有効ではありません。また、telldir() によって返された値は、rewinddir() へ
     の呼び出しによって無効にされます。

     seekdir() 関数は、ディレクトリストリームで次の readdir() 操作の位置を設定
     します。新しい位置は、telldir() 操作が実行されたとき、ディレクトリスト
     リームと関連付けられた位置になります。

     rewinddir() 関数は、指定されたディレクトリストリームの位置をディレクトリ
     の始めにリセットします。

     closedir() 関数は、指定されたディレクトリストリームをクローズし、成功すれ
     ば、0 を返し、dirp ポインタに関連した構造体を解放します。失敗すれば、-1
     が返され、グローバル変数 errno は、エラーを示す値が設定されます。

     fdclosedir() 関数は、この関数が、ディレクトリストリームをクローズする代わ
     りにディレクトリファイルの記述子を返すことを除いて、closedir() 関数と同等
     です。

     dirfd() 関数は、指定されたディレクトリストリームに関連した整数のファイル
     記述子 (open(2) を参照) を返します。

     エントリ ``name'' のディレクトリを検索するサンプルコードは、次の通りです:

           dirp = opendir(".");
           if (dirp == NULL)
                   return (ERROR);
           len = strlen(name);
           while ((dp = readdir(dirp)) != NULL) {
                   if (dp->d_namlen == len && strcmp(dp->d_name, name) == 0) {
                           (void)closedir(dirp);
                           return (FOUND);
                   }
           }
           (void)closedir(dirp);
           return (NOT_FOUND);

関連項目
     close(2), lseek(2), open(2), read(2), dir(5)

歴史
     opendir(), readdir(), telldir(), seekdir(), rewinddir(), closedir() と
     dirfd() 関数は、4.2BSD で登場しました。fdopendir() 関数は、FreeBSD 8.0 で
     登場しました。fdclosedir() 関数は、FreeBSD 10.0 で登場しました。

バグ
     telldir() と seekdir() の振る舞いは、平行なアンリンクが起こり、ディレクト
     リが、1 ページより大きいなら、悪くなる可能性があります。最後の readdir()
     は、実行された、その最後の readdir() と同じ値を返すために、常に、正しい位
     置を設定する直前に telldir() によって与えられた位置に seekdir() すること
     を保証するためのコードがあります。これは、"呼び込まれた最後のエントリを押
     し戻す" ことを望んでいるいくつかのアプリケーションにとって十分です、例え
     ば、Samba。ディレクトリの最初以外のあらゆる他の位置にシークして戻ること
     は、削除が存在するなら、予期されない振る舞いの結果となります。この状況
     が、getdirentries() と VFS に変更で改善することは、望まれます。

FreeBSD 11.2                    August 31, 2016                   FreeBSD 11.2

Table of Contents

FreeBSD マニュアル検索