日本語 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.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)
13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。
Table of Contents
PIPE(2) FreeBSD システムコールマニュアル PIPE(2) 名称 pipe, pipe2 -- プロセス間通信のための記述子のペアを作成する ライブラリ 標準 C ライブラリ (libc, -lc) 書式 #include <unistd.h> int pipe(int fildes[2]); int pipe2(int fildes[2], int flags); 解説 pipe() 関数は、双方向データフローを可能にするオブジェクトであるパイプを作 成し、ファイル記述子のペアを割り付けます。 pipe2() システムコールは、flags 引数によってファイル記述子の属性の制御を 許可します。flags の値は、<fcntl.h> で定義される、次のリストのフラグの ビット単位の論理和 (OR) によって構築されます: O_CLOEXEC 新しいファイル記述子のための close-on-exec フラグを設定しま す。 O_NONBLOCK パイプの終りのためのブロックされないフラグを設定します。 flags 引数が 0 であるなら、振る舞いは、pipe() への呼び出しと同一です。 慣例によって、データを fildes[1] に書き込み、fildes[0] に現れる (すなわ ち、読み込むことができる) ように、最初の記述子は、通常、パイプの読み込み の終りとして使用され、2 番目は、通常、書き込みの終りです。これによって、1 つのプログラムの出力を別のプログラムに送ることができます。発信元の標準出 力は、パイプの書き込み終りとなるようにセットアップされ、受信側の標準入力 は、パイプの読み込みの終りとなるようにセットアップされます。パイプそれ自 体は、すべての関連する記述子がクローズされるまで、持続します。 クローズされた終りがあるパイプは、相手がなくなったと見なされます。そのよ うなパイプに書き込むことによって、書き込みプロセスは、SIGPIPE シグナルを 受信します。相手がなくなったパイプは、読み込み側にエンドオブファイル (end-of-file) を配信するしかありません: 読み込み側があらゆるバッファリン グされたデータを消費した後に、相手がなくなったパイプを読み込むことは、0 のカウントを返します。 この実装のパイプの双方向の性質は、古いシステムへの移植性がないので、1 つ の方向でパイプを使用するとき、古典的な手法で終了点を使用するための慣例を 使用することが推奨されます。 実装に関する注 pipe() 関数は、pipe2() システムコールを呼び出します。結果として、 dtrace(1) または ktrace(1) によって捕獲されるそれらのようにトレースされる システムコールは、pipe2() への呼び出しを表示します。 戻り値 関数 pipe() は、処理が成功すると値 0 を返します。そうでない場合、値 -1 が 返され、グローバル変数 errno にエラーを示す値が設定されます。 エラー pipe() と pipe2() システムコールは、次の場合に失敗します: [EFAULT] fildes 引数が、無効のメモリ位置を指しています。 [EMFILE] あまりにも多くの記述子がアクティブです。 [ENFILE] システムファイルテーブルが満杯です。 [ENOMEM] パイプを確立するための十分なカーネルメモリが足りませ ん。 また pipe2() システムコールは、次の場合に失敗します: [EINVAL] flags 引数が不正です。 関連項目 sh(1), fork(2), read(2), socketpair(2), write(2) 歴史 pipe() 関数は、Version 3 AT&T UNIX で登場しました。 双方向パイプは、AT&T System V Release 4 UNIX ではじめて使用されました。 pipe2() 関数は、FreeBSD 10.0 で登場しました。 pipe() 関数は、FreeBSD 11.0 の pipe2() のまわりのラッパとなりました。 FreeBSD 13.2 December 1, 2017 FreeBSD 13.2