GNU/Linux >> Linux の 問題 >  >> Linux

シェル内の複数のファイルにパイプしますか?

ディスクに保存したくない大量のデータを生成するアプリケーションがあります。このアプリケーションは、ほとんどの場合、使用したくないデータを出力しますが、個別のファイルに分割する必要がある一連の有用な情報を出力します。たとえば、次の出力があるとします。

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

(ここから)

(プロセス置換について)


Linux
  1. PHP-FFMpeg:複数の入力ファイルを許可する(ビデオにオーディオを追加する)

  2. 複数のファイルの拡張子を変更するにはどうすればよいですか?

  3. ファイル内の単語をGrepしてから、ファイルをコピーしますか?

  1. Grep:メモリが使い果たされましたか?

  2. ファイル内の複数の文字列のGrepを実行し、サイズ順にファイルを一覧表示しますか?

  3. Dd:複数の入力ファイル?

  1. ファイル内の複数の文字列を見つける方法は??

  2. BASH シェルが Linux で構成ファイルをロードする方法

  3. Linux で grep の検索仕様として使用するパイプ出力