1 回のループで多くのことを行うにはどうすればよいですか?
これまで見てきたループは、本文に 1 つのコマンドまたはパイプラインしか含んでいませんでしたが、ループにはいくつでもコマンドを入れられます。 どこで 1 つが終わり、次が始まるかをシェルに伝えるには、セミコロンで区切る必要があります。
for f in seasonal/*.csv; do echo $f; head -n 2 $f | tail -n 1; done
seasonal/autumn.csv
2017-01-05,canine
seasonal/spring.csv
2017-01-25,wisdom
seasonal/summer.csv
2017-01-11,canine
seasonal/winter.csv
2017-01-03,bicuspid
前のループで echo と head のコマンドの間のセミコロンを入れ忘れて、
次のようにシェルに実行させたとします。
for f in seasonal/*.csv; do echo $f head -n 2 $f | tail -n 1; done
シェルは何をするでしょうか?
この演習はコースの一部です
