>_ IzzyLab

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

Ротатор строк через heredoc

средне

Напиши /root/gen.sh, который с помощью heredoc записывает в /root/config.ini многострочный конфиг: секцию [server], а под ней строки host=localhost и port=8080. Запусти скрипт.

Что потренируешь:
  • heredoc
  • многострочный вывод
  • cat в файл
  • экранирование подстановок
  • chmod

Разбор темы

Heredoc — способ скормить команде сразу многострочный блок текста прямо из скрипта, без череды echo: после команда <<МАРКЕР идут строки как есть, а завершает блок тот же маркер в начале отдельной строки. Имя маркера произвольно, важно лишь совпадение открывающего и закрывающего. Кавычки вокруг открывающего маркера (<<'EOF') отключают подстановку — $, переменные и спецсимволы попадают в файл буквально, что как раз нужно для статичного конфига. Тонкость этой задачи — heredoc внутри heredoc: внешний пишет сам скрипт, внутренний уже внутри него формирует конфиг, поэтому маркеры берут разные.

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

  1. в config.ini есть строки конфига

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