如何在一个循环中完成多步操作?
到目前为止,您看到的循环在循环体内只有一条命令或一条管道, 但循环体中可以包含任意数量的命令。 要告诉 shell 一条命令结束、下一条开始, 您必须用分号将它们分隔开:
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 命令之间写分号,
于是让 shell 运行:
for f in seasonal/*.csv; do echo $f head -n 2 $f | tail -n 1; done
shell 会怎么做?
本练习是课程的一部分
