回答:
名前付きパイプを探しているかもしれません。
mkfifo f
{
echo 'V cebqhpr bhgchg.'
sleep 2
echo 'Urer vf zber bhgchg.'
} >f
rot13 < f
パイプへの書き込みは、リスニングプログラムを開始しません。入力をループで処理する場合は、リスニングプログラムを実行し続ける必要があります。
while true; do rot13 <f >decoded-output-$(date +%s.%N); done
複数のプロセスが書き込まれている場合でも、パイプに書き込まれたすべてのデータがマージされることに注意してください。複数のプロセスが読み取り中の場合、1つだけがデータを取得します。そのため、パイプは同時状況には適さない場合があります。
名前付きソケットは同時接続を処理できますが、これは基本的なシェルスクリプトの機能を超えています。
規模の最も複雑な終わりにあるカスタムファイルシステムは、各ファイルシステムの設計と実装することができます、open
、write
、などを、プログラム内の関数をトリガします。最小の投資は、例えばPythonでの数十行の非自明なコーディングです。ファイルの読み取り時にのみコマンドを実行する場合は、scriptfsまたはfusefltを使用できます。