始める無料で始める

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

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

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 に渡されるものがなくなるため、 grep は入力をずっと待ち続けてしまいます。


では、次のようにパイプラインの先頭にリダイレクトを書いた場合はどうなるでしょうか。

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

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

Shell 入門

コースを見る

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

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

演習を開始する