Основы разработки shell-сценариев для командного интерпретатора BASH

Цель данного курса - приобретение компетенций по созданию shell-сценариев на языке BASH.

Данный курс будет полезен для системных администраторов, в чьи функции входит автоматизация различных задач, связанных с обслуживанием системы и работой с данными, системных администраторов, которым необходимо более глубокое понимание принципов инициализации операционной среды и командной оболочки, системных администраторов, перед которыми стоит задача разобраться в работе и/или модифицировать shell-сценарии, написанные другими разработчиками.

Предварительные требования

  • Понимать основные принципы работы  ОС Linux и сети;
  • Уверенно использовать командную строку и базовые команды (навигация по файловой системе, управление правами доступа);
  • Знать предназначение стандартных системных директорий.

Приобретаемые знания и навыки

По окончании курса слушатели смогут:

  • Использовать основные концепции языка: переменные, циклы, условное выполнение, функции и т.д.$
  • Выполнять отладку сценариев;
  • Создавать собственные сценарии;
  • Модифицировать код имеющихся сценариев.

Программа курса

Модуль 1. Введение

  • Введение, задачи, решаемые с помощью shell-сценариев
  • Практическая работа "Обработчик сценария"
  • Практическая работа " Использование конструкции "&&""
  • Практическая работа " Использование переменной $PATH "
  • Практическая работа " Интерпретация прав доступа "

Модуль 2. Использование переменных

  • Использование переменных, переменные окружение, правила именования
  • Практическая работа "Именование переменных"
  • Практическая работа "Переменные окружения"
  • Практическая работа "Область видимости переменной"
  • Практическая работа "Типы переменных"

Модуль 3. Организация диалога с пользователем: вывод

  • Организация диалога с пользователем. Команды echo и printf
  • Практическая работа "Экранирование символов"
  • Практическая работа "Вывод специализированных символов"
  • Практическая работа "Подсчет количества процессов"
  • Практическая работа "Использование кавычек"
  • Практическая работа "Использование printf "
  • Практическая работа "Форматирование вывода"
  • Практическая работа "Перенаправление вывода"
  • Практическая работа "Форматированный вывод с помощью команды printf"

Модуль 4. Организация диалога с пользователем: ввод

  • Ввод данных помощью команд read и select
  • Практическая работа " Использование команды read"    

Модуль 5. Условное выполнение

  • Условное выполнение; понятие "истина" и "ложь"
  • Практическая работа " Использование оператора ":""
  • Практическая работа " Проверка условий"
  • Практическая работа " Оценка количества процессов "
  • Практическая работа " Вариант тернарного оператора"

Модуль 6. Арифметические операции

  • Арифметические операции,  работа со случайными значениями
  • Практическая работа "Подсчет значения"
  • Практическая работа "Проверка срока действия пароля"
  • Практическая работа "Операции над числами с плавающей точкой"
  • Практическая работа "Операции над числами с плавающей точкой - II"  

Модуль 7. Циклическое выполнение

  • Понятие цикла, циклы for и while
  • Практическая работа "Использование цикла for"
  • Практическая работа "Использование вложенных циклов"
  • Практическая работа "Сценарий резервного копирования"

Модуль 8. Инструменты отладки сценариев

  • Отладка сценария, специализированные опции bash
  • Практическая работа "Иллюстрация работы режима отладки"
  • Практическая работа "Использование trap"
  • Практическая работа "Поиск ошибок"
  • Практическая работа "Корректирование неработающего сценария"     

Модуль 9. Анализ командной строки

  • Анализ командной строки
  • Практическая работа "Определение опций сценария"
  • Практическая работа "Создание учётных записей пользователей"
  • Практическая работа "Анализ строки параметров"

Модуль 10. Использование функций

  • Использование функций
  • Практическая работа "Создание пользовательской функции"
  • Практическая работа "Анализ системных функций"
  • Практическая работа "Анализ функции"
  • Практическая работа "Создание и тестирование функции"

Модуль 11. Работа с массивами

  • Работа с массивами
  • Практическая работа "Сортировка массива"
  • Практическая работа "Загрузка данных в массив"

Модуль 12. Работа со строками

  • Работа со строками. Использование sed и awk
  • Практическая работа "Использование регулярных выражений"
  • Практическая работа "Получение уникальных значений"
  • Практическая работа "Использование sed"
  • Практическая работа "Отбор данных с помощью sed"
  • Практическая работа "Редактирование файла с помощью sed"
  • Практическая работа "Анализ сценария"
  • Практическая работа "Использование awk"
  • Практическая работа "Работа с данными посредством awk"

Модуль 13. Операции с файлами

  • Операции с файлами
  • Практическая работа "Генерация файла"
  • Практическая работа "Интерпретация прав доступа"
  • Практическая работа "Анализ сценария"
  • Практическая работа "Чтение строк из файла"

Модуль 14. Дополнительные материалы

  • Дополнительные источники информации по рассматриваемым вопросам

Документы об окончании курса

  • Сертификат Учебного центра Noventiq
  • Cертификат об обучении установленного образца

Certificate Noventiq Education Belarusсертификат об обучении установленного образца

Оставить отзыв

Информация о курсе

24-26 июня
10:00 - 17:00

624 BYN

*с учетом НДС 20%

Вендор: Linux
Код курса: LL-104
Продолжительность: 3 дня / 24 ак. часа
Направление: Linux / UNIX
Экзамен:

n/a

Записаться на курс

Название курса и комментарии*

Имя*

Фамилия*

Отчество*

Компания

Телефон*

Email*

Настоящим, в соответствии с ч.2.ст.18 Закона Республики Беларусь от 10.11.2008 N 455-З(ред. от 11.05.2016) "Об информации, информатизации и защите информации" и Законом Республики Беларусь от 7 мая 2021 г. № 99-З «О защите персональных данных», отправляя данную форму, вы подтверждаете свое согласие на сбор, обработку и хранение ООО «СофтЛайнБел» Ваших персональных данных. ООО «СофтЛайнБел» гарантирует конфиденциальность получаемой от Вас информации. Сбор, обработка и хранение персональных данных осуществляется в целях эффективного оказания услуг и исполнения договоров.