ディスクに保存したくない大量のデータを生成するアプリケーションがあります。このアプリケーションは、ほとんどの場合、使用したくないデータを出力しますが、個別のファイルに分割する必要がある一連の有用な情報を出力します。たとえば、次の出力があるとします。
JUNK
JUNK
JUNK
JUNK
A 1
JUNK
B 5
C 1
JUNK
このようにアプリケーションを3回実行できます:
./app | grep A > A.out
./app | grep B > B.out
./app | grep C > C.out
これで私が欲しいものを手に入れることができますが、時間がかかりすぎます。また、すべての出力を1つのファイルにダンプして、それを解析したくありません。
上記の3つの操作を組み合わせて、アプリケーションを1回実行するだけで、3つの別々の出力ファイルを取得できるようにする方法はありますか?
承認された回答:
ティーがある場合
./app | tee >(grep A > A.out) >(grep B > B.out) >(grep C > C.out) > /dev/null
(ここから)
(プロセス置換について)