Этот курс среднего уровня превращает знакомые команды оболочки в повторно используемые программы Bash. В шести практикумах с инструкциями вы создадите исполняемые скрипты, примете интерактивный ввод и аргументы, реализуете условия и циклы, отреагируете на статус команд и сохраните историю с временными метками.
Итоговое задание объединяет основы в onboard.sh: проверить одно имя, избежать дубликатов, создать пользователя Bash и принадлежащий ему рабочий каталог и записать успешное создание в журнал аудита.
Чему вы научитесь
- Писать Bash-скрипт с shebang, делать его исполняемым и запускать через
./ - Хранить значения в переменных и принимать ввод через
readили аргумент$1 - Проверять наличие файла и числовой идентификатор через
ifиelse - Перебирать числовые диапазоны и шаблоны имён через циклы
for - Повторять действия, пока числовое условие истинно, через цикл
while - Проверять
$?сразу после команды и ветвиться при ошибке - Добавлять сообщения и время в журнал с абсолютным путём, не перезаписывая историю
- Строить скрипт создания аккаунтов с проверкой аргументов, владением и аудитом
Для кого этот курс
Курс предназначен для пользователей Linux, знакомых с командами терминала, файлами, разрешениями, переменными и перенаправлением и желающих объединять их в небольшие административные Bash-скрипты.
Предварительные требования: Уверенная навигация в терминале, операции с файлами, Nano или другой редактор, переменные, шаблоны, подстановка команд, перенаправление, разрешения и sudo.
Учебная среда: Предоставляемый LabEx терминал на базе Ubuntu с Bash, редактируемыми скриптами, подготовленными файлами и изолированными административными правами для тестовых аккаунтов.
Часто задаваемые вопросы
Как построен курс?
Шесть практикумов содержат инструкции. Седьмой элемент — менее управляемое задание, где вы поэтапно создаёте и проверяете исполняемый onboard.sh.
Настраивается ли Cron в лаборатории планирования?
Нет. Скрипт готовится к автономному запуску добавлением сообщений и date в журнал с абсолютным путём, а повторные запуски выполняются вручную. Cron изучается отдельно.
Какие изменения в системе делает итоговый скрипт?
В изолированной среде он применяет sudo useradd -m -s /bin/bash, создаёт реальный тестовый аккаунт и /home/<username>/work, назначает владельца и дополняет ~/project/onboard.log.
Насколько продвинута обработка ошибок?
Рассматриваются $?, ненулевой exit, число аргументов и условия для ошибки команды или существующего пользователя. Traps, set -euo pipefail, очистка и откат не входят в курс.





