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

Цель данного курса - приобретение компетенций по созданию 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. Дополнительные материалы

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

Ближайшие курсы

132_2 04.06 - 06.06.2025

Макросы в Excel: практическое программирование. Уровень II.

Стоимость обучения в группе

32 500 ₽

Стоимость индивидуального обучения

48 600 ₽

Длительность

3 дня (24 ак. ч.)

СТП 05.06 - 06.06.2025

Современные технологии продаж

Стоимость обучения в группе

27 500 ₽

Стоимость индивидуального обучения

37 500 ₽

Длительность

2 дня (14 ак. ч.)

PG_миграция 09.06 - 10.06.2025

Миграция на Postgres: Подходы, проблемы и решения

Стоимость обучения в группе

32 170 ₽

Стоимость индивидуального обучения

77 000 ₽

Длительность

2 дня (16 ак. ч.)

JS_Ext 09.06 - 10.06.2025

JavaScript. Уровень 2. Расширенные возможности

Стоимость обучения в группе

34 750 ₽

Стоимость индивидуального обучения

45 000 ₽

Длительность

2 дня (16 ак. ч.)

ITIL© v3. SD-01 09.06 - 10.06.2025

Создание и управление службой Service Desk

Стоимость обучения в группе

28 950 ₽

Стоимость индивидуального обучения

54 500 ₽

Длительность

2 дня (16 ак. ч.)

БТ_TCP/IP 09.06 - 10.06.2025

Основы TCP/IP

Стоимость обучения в группе

34 050 ₽

Стоимость индивидуального обучения

48 500 ₽

Длительность

2 дня (16 ак. ч.)

ЭР 09.06 - 10.06.2025

Эффективный руководитель: лидерство, навыки управления людьми и командами

Стоимость обучения в группе

33 000 ₽

Стоимость индивидуального обучения

66 600 ₽

Длительность

2 дня (16 ак. часов)

Or12с_DPU 09.06 - 11.06.2025

Oracle 12c: Разработка программных модулей PL/SQL

Стоимость обучения в группе

35 200 ₽

Стоимость индивидуального обучения

58 500 ₽

Длительность

3 дня (24 ак. ч.)

Or11g_DPU 09.06 - 11.06.2025

Oracle 11g: Разработка программных модулей PL/SQL

Стоимость обучения в группе

35 200 ₽

Стоимость индивидуального обучения

58 500 ₽

Длительность

3 дня (24 ак. ч.)

JS 09.06 - 11.06.2025

JavaScript. Основы веб - программирования

Стоимость обучения в группе

40 400 ₽

Стоимость индивидуального обучения

55 000 ₽

Длительность

3 дня (24 ак. ч.)

ViPNet 4 09.06 - 11.06.2025

Администрирование системы защиты информации ViPNet 4 (Программно-аппаратные комплексы VipNet)

Стоимость обучения в группе

34 050 ₽

Стоимость индивидуального обучения

58 100 ₽

Длительность

3 дня (72 ак. ч.)

IPMA 09.06 - 11.06.2025

Основы управления проектами

Стоимость обучения в группе

39 035 ₽

Стоимость индивидуального обучения

85 850 ₽

Длительность

3 дня (24 ак. ч.)

Or12c_APLS0 09.06 - 11.06.2025

Передовые методы PL/SQL

Стоимость обучения в группе

47 920 ₽

Стоимость индивидуального обучения

58 000 ₽

Длительность

3 дня (24 ак. ч.)

Компас-3D 09.06 - 11.06.2025

Компас-3D курс пользователя

Стоимость обучения в группе

33 000 ₽

Стоимость индивидуального обучения

55 000 ₽

Длительность

3 дня (24 ак. часа)

ITIL ® 4.0 09.06 - 11.06.2025

Основы управления ИТ услугами по ITIL® 4.0

Стоимость обучения в группе

31 750 ₽

Стоимость индивидуального обучения

60 550 ₽

Длительность

3 дня (24 ак. ч.)

RDS 09.06 - 11.06.2025

Планирование, развёртывание и управление Remote Desktop Services

Стоимость обучения в группе

41 300 ₽

Стоимость индивидуального обучения

107 500 ₽

Длительность

3 дня (24 ак. ч.)

PG_QPT 09.06 - 11.06.2025

PostgreSQL. Оптимизация запросов

Стоимость обучения в группе

26 030 ₽

Стоимость индивидуального обучения

40 000 ₽

Длительность

3 дня (24 ак. ч.)

ITPM 16.06 - 18.06.2025

Управление проектами ИТ. Практические аспекты

Стоимость обучения в группе

52 885 ₽

Стоимость индивидуального обучения

143 850 ₽

Длительность

3 дня (24 ак. ч.)

10987 16.06 - 19.06.2025

Настройка производительности и оптимизации баз данных SQL

Стоимость обучения в группе

38 100 ₽

Стоимость индивидуального обучения

55 500 ₽

Длительность

4 дня (32 ак. ч.)

HCIP_DA 16.06 - 20.06.2025

Внедрение продвинутых технологий маршрутизации и коммутации Huawei

Стоимость обучения в группе

109 400 ₽

Стоимость индивидуального обучения

136 600 ₽

Длительность

5 дней (40 ак. часов)

20413 16.06 - 20.06.2025

Проектирование и внедрение серверной инфраструктуры

Стоимость обучения в группе

37 930 ₽

Стоимость индивидуального обучения

68 000 ₽

Длительность

5 дней (40 ак. ч.)

10969 16.06 - 20.06.2025

Cлужбы Active Directory в Windows Server 2012 R2

Стоимость обучения в группе

38 700 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

20412 16.06 - 20.06.2025

Настройка дополнительных сервисов Windows Server 2012 R2

Стоимость обучения в группе

38 000 ₽

Стоимость индивидуального обучения

64 000 ₽

Длительность

5 дней (40 ак. ч.)

20345-1-B 16.06 - 20.06.2025

Администрирование Microsoft Exchange Server 2016/2019

Стоимость обучения в группе

41 000 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

NC1 16.06 - 20.06.2025

Проектирование в nanoCAD. Базовый курс

Стоимость обучения в группе

36 385 ₽

Стоимость индивидуального обучения

105 400 ₽

Длительность

4 дня (32 ак. ч.)

HCIP_DC 16.06 - 27.06.2025

Внедрение ключевых технологий направления Datacom Huawei

Стоимость обучения в группе

136 400 ₽

Стоимость индивидуального обучения

155 000 ₽

Длительность

80 ак. ч.

LPI-103 17.06 - 20.06.2025

Системное администрирование Linux

Стоимость обучения в группе

30 990 ₽

Стоимость индивидуального обучения

50 050 ₽

Длительность

4 дня (32 ак. ч.)

Юнит_Тренинг-9 23.06 - 24.06.2025

Сервисная работа с клиентом

Стоимость обучения в группе

40 000 ₽

Стоимость индивидуального обучения

60 500 ₽

Длительность

2 дня (16 ак. часов)

АС1 23.06 - 25.06.2025

AutoCAD: уровень I. Основы проектирования

Стоимость обучения в группе

36 385 ₽

Стоимость индивидуального обучения

50 000 ₽

Длительность

3 дня (24 ак. ч.)

Twr 23.06 - 26.06.2025

Тестирование WEB-приложений

Стоимость обучения в группе

39 790 ₽

Стоимость индивидуального обучения

60 500 ₽

Длительность

4 дня (32 ак. ч.)

20483 23.06 - 27.06.2025

Программирование на C#

Стоимость обучения в группе

40 400 ₽

Стоимость индивидуального обучения

68 500 ₽

Длительность

5 дней (40 ак. ч.)

Python-3 23.06 - 27.06.2025

Разработка веб - приложений в Django. Уровень 3.

Стоимость обучения в группе

48 520 ₽

Стоимость индивидуального обучения

95 800 ₽

Длительность

5 дней (40 ак. ч.)

LPI-101 23.06 - 27.06.2025

Администрирование GNU/Linux

Стоимость обучения в группе

36 960 ₽

Стоимость индивидуального обучения

55 500 ₽

Длительность

5 дней (40 ак. ч.)

ARH-0300 23.06 - 27.06.2025

Углубленное администрирование Red Hat Linux

Стоимость обучения в группе

50 230 ₽

Стоимость индивидуального обучения

77 000 ₽

Длительность

5 дней (40 ак. ч.)

20762 23.06 - 27.06.2025

Разработка баз данных SQL

Стоимость обучения в группе

40 350 ₽

Стоимость индивидуального обучения

65 300 ₽

Длительность

5 дней (40 ак. ч.)

DP-900T00 30.06 - 30.06.2025

Основы данных Microsoft Azure

Стоимость обучения в группе

18 500 ₽

Стоимость индивидуального обучения

25 000 ₽

Длительность

1 день (8 ак. ч.)

АКонт 30.06 - 02.07.2025

Администрирование АПКШ "Континент". Версия 4

Стоимость обучения в группе

41 070 ₽

Стоимость индивидуального обучения

70 500 ₽

Длительность

3 дня (24 ак. ч.)

10962 30.06 - 02.07.2025

Расширенные возможности по автоматизации администрирования с помощью Windows PowerShell

Стоимость обучения в группе

29 500 ₽

Стоимость индивидуального обучения

53 800 ₽

Длительность

3 дня (24 ак. ч.)

IT-02 30.06 - 02.07.2025

Основы ITIL

Стоимость обучения в группе

31 750 ₽

Стоимость индивидуального обучения

60 500 ₽

Длительность

3 дня (24 ак. ч.)

ДИТ 30.06 - 04.07.2025

Директор по ИТ

Стоимость обучения в группе

80 650 ₽

Стоимость индивидуального обучения

105 000 ₽

Длительность

5 дней (40 ак. часов)

PL-100T00 01.07 - 03.07.2025

Создатель приложений Microsoft Power Platform

Стоимость обучения в группе

46 200 ₽

Стоимость индивидуального обучения

60 000 ₽

Длительность

3 дня (24 ак. ч.)