>_ IzzyLab

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

Надёжный скрипт

сложно

Напиши скрипт /root/robust.sh с «строгим режимом» set -euo pipefail. Поведение: без аргумента — напечатать usage и выйти с кодом 2; с именем существующего файла — напечатать число строк в нём.

Что потренируешь:
  • set -euo pipefail
  • строгий режим
  • $#
  • коды возврата
  • bash-скрипты

Разбор темы

«Строгий режим» — защитная преамбула из трёх опций: прерывание на первой же ошибке, ругань на необъявленные переменные и падение конвейера при сбое любого его звена, а не только последнего. Ставится сразу после shebang и радикально снижает шанс, что скрипт продолжит работать на битом состоянии. Задача учит проверять число переданных аргументов через $#, ветвить поведение и завершаться с осмысленным кодом возврата, а имена файлов из-за строгого режима брать в кавычки.

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

  1. строгий режим + usage(код 2) + счёт строк

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