前提条件:
$ mkfifo pipe1
数行を入力するとパイプ1
$ (echo line 1; echo line 2) > pipe1
すべての行は他の端末で読むことができます
$ cat pipe1
line 1
line 2
今まではそんなに良くなった。
しかし、
後者の代わりに猫いくつかの部分を読み取った。
$ head -n 1 pipe1; head -n 1 pipe1
line 1
その後、データの最初の行のみがパイプラインにリンクされます。パイプ1復帰(最初からヘッダー -n 1)残りのデータは失われたように見え、2番目の読み取りアクセスが中断され(新しい)データが利用可能になるのを待ちます。パイプ1。
どのように
複数の連続した部分読み取りを可能にする名前付きパイプとパイプの内容を設定しますか?
つまり、これを取得する方法は次のとおりです。
$ head -n 1 pipe1; head -n 1 pipe1
line 1
line 2