始める無料で始める

パイプの出力を保存するにはどうすればよいですか?

シェルでは、パイプでつないだ一連のコマンドの出力をリダイレクトできます。

cut -d , -f 2 seasonal/*.csv | grep -v Tooth > teeth-only.txt

ただし、> はパイプラインの末尾に置く必要があります。 次のように途中で使おうとすると:

cut -d , -f 2 seasonal/*.csv > teeth-only.txt | grep -v Tooth

cut の出力がすべて teeth-only.txt に書き込まれてしまいます。 そのため grep に渡すデータが残らず、 それは入力をいつまでも待ち続けることになります。


では、次のようにリダイレクトをパイプラインの先頭に置くとどうなるでしょうか。

> result.txt head -n 3 seasonal/winter.csv

この演習はコースの一部です

Shell 入門

コースを見る

実践的なインタラクティブ演習

理論を実践に変える、インタラクティブな演習のひとつをお試しください

演習を開始する