>_ IzzyLab

Практическое задание

awk: CSV в TSV

средне

Файл /root/in.csv — значения через запятую. Конвертируй его в TSV (поля через табуляцию) и запиши в /root/out.tsv.

Что потренируешь:
  • awk
  • FS и OFS
  • блок BEGIN
  • пересборка $0
  • csv tsv

Разбор темы

У awk два разделителя полей: FS (input field separator) определяет, по чему резать вход, а OFS (output field separator) — чем склеивать поля при печати; оба задают в блоке BEGIN, который выполняется до чтения файла. Тонкость: awk пересобирает строку через новый OFS только если ты хоть раз тронул какое-нибудь поле — само по себе изменение OFS строку не переформатирует. Отсюда идея конвертации разделителя: сменить FS/OFS и заставить awk перестроить запись, коснувшись поля, после чего напечатать строку.

Что проверяется

  1. поля разделены табуляцией

Как это выглядит