パイプの混乱:(「3つのコマンドパイプライン」を作成します。)[閉じる]

パイプの混乱:(「3つのコマンドパイプライン」を作成します。)[閉じる]

したがって、3つのコマンドを使用してパイプラインを作成する必要があります。

  1. プログラムは次のように書かれています。無限ループでテキストを印刷 - コンパイル後に呼び出されるa.out
  2. それは次のようなことができますxcalc
  3. 上記のように、たとえば次のようになります。xclock

だから私の質問は、これら3つのパイプを作成し、コマンドを使用してlsofオープンパイプに関する情報を取得するにはどうすればよいですか?
私は次のことを試しました:

mknod pipe1 p ./a.out | xclock | xcalc

しかし、正しく動作しません。必要な情報を取得するには
どのパラメータを使用する必要がありますか?lsof(存在するソラリスこれはpfiles -F)。

答え1

パイプと同様に、物理パイプには2つの開いた端(つまり、水が流れる側)が必要です。存在する、そして水が流れる側出る)、存在する*ニックスパイプには、入力を受け取るプログラムの入力が必要です/dev/stdin(例:標準入力)、そして出力を/dev/stdout、(例:標準出力)または(より一般的に)両方を実行します。これらのタスクを実行するように設計されたプログラムは、次のように動作します。プラグあるいは、パイプにプラグを差し込み(データ)の流れを妨げます。

OPで使用されている3つのプログラム(mknodxclockおよび)はすべてxcalc使用しないでください。標準入力または標準出力それほど重要だ。*ニックス等しいプラグ。それらを一緒に配管することは、3つのアイダホジャガイモを2つの長さのPVCパイプに接続するよりも有用ではありません。

関連情報