ように聞こえるteeコマンドは、あなたがやりたいだろう。
キーは使用することです
>( )
以下のためのプロセス置換。ではtee、次のパターンを使用します。
tee >(proc1) >(proc2) >(proc3) | proc4
したがって、ls2つの異なるgrepプログラムへの入力としての出力を使用する場合は、それぞれの出力grepを異なるファイルに保存し、すべての結果をlessでパイプ処理します:
ls -A | tee >(grep ^[.] > hidden-files) >(grep -v ^[.] > normal-files) | less
の結果はls -A両方に「パイプ」されgrepます。ファイルは、hidden-files最初の出力からコンテンツを有するであろうgrep、そしてnormal-files第二の結果を有するであろうgrep。 すべてのファイルがページャーに表示されますless。 編集:に表示されるのlessは、sの結果ではなく、とまったく同じ出力です。からへの出力を変更したい場合(例えば、通常のファイルが隠しファイルの前にリストされるように順序を入れ替える)、これを試してください:ls -Agrepls -Aless
ls -A | tee >(grep ^[.]) >(grep -v ^[.]) >/dev/null | less
を指定しない>/dev/nullと、grepsの出力ls -Aが置き換えられる代わりに、出力に追加されます。
ソース