1. Learn
  2. /
  3. Курси
  4. /
  5. Вступ до Shell

Connected

вправа

Як виконати багато дій в одному циклі?

Цикли, які ви бачили до цього, містили лише одну команду або конвеєр у тілі, але цикл може містити будь-яку кількість команд. Щоб підказати оболонці, де закінчується одна команда і починається наступна, потрібно розділяти їх крапкою з комою:

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

Що зробить оболонка?

Інструкції

50 XP

Можливі відповіді