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

Курс посвящен знакомству с одним из наиболее распространённых инструментов создания shell-сценариев в OC Linux - языку BASH. В курсе разбираются основные концепции языка, его особенности и типичные ошибки, которые разработчик допускает на начальных этапах применения данного инструмента.

Целевая аудитория

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

Предварительная подготовка

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

ПРОГРАММА КУРСА

1. Введение

  • Основные сведения о командном интерпретаторе BASH, сфера применения,  возможности, обзор специализированных символов и принципа интерпретации командной строки.
  • Условия, необходимые для запуска сценария (права доступа, переменная $PATH, определение shebang)
  • Коды возврата.
  • Рекомендации по структурированию исходного текста
  • Практическое задание

2. Ввод-вывод, использование переменных

  • Потоки ввода-вывода, перенаправление, конвейеризация
  • Переменные окружения, специализированные переменные BASH
  • Объявление собственных переменных. Типы, время жизни, область видимости.
  • Уничтожение переменных.
  • Ввод и вывод данных. Организация диалога с пользователем.
  • Практическое задание

3. Условное выполнение

  • Понятие «истина» и «ложь» при анализе выражений
  • Операторы if...then..., if...then...else, if...then...elif
  • Оператор множественного выбора case
  • Практическое задание

4. Арифметические операции

  • Сравнение переменных
  • Основные арифметические операции, приоритеты.
  • Практическое задание

5. Циклы

  • Понятие тела цикла, счетчика, анализ условия выхода, бесконечный цикл.
  • Использование цикла for
  • Использование цикл while
  • Использование цикла until
  • Команды break и continue
  • Практическое задание

6. Анализ командной строки

  • Чтение параметров, переданных сценарию при вызове
  • Использование команды shift для сдвига позиционных параметров
  • Практическое задание.

7. Функции

  • Необходимость использования функций
  • Передача параметров в функцию.
  • Специализированные функции (команда trap)
  • Добавление функций в общесистемную оболочку
  • Практическое задание

8. Работа с массивами

  • Инициализация массива
  • Доступ к элементам массива
  • Работа с массивами
  • Практическое задание

9. Работа со строками

  • Операторы для сравнения строк
  • Обработка строк собственными средствами BASH
  • Обработка строк, с использованием механизмов sed и awk
  • Анализ и манипуляция строками посредством утилит grep, sort, tr, cut, uniq и др.
  • Практическое задание

10. Операции с файлами

  • Типы файлов. Специализированные файлы, псевдоустройства.
  • Доступ к файлам. Особенности файловой системы Linux. Что такое метаданные?
  • Чтение/запись в файл.
  • Сравнение файлов.
  • Практическое задание.

11. Отладка, типичные ошибки

  • Встроенные средства bash, позволяющие диагностировать проблемы, связанные с работой сценария.
  • Анализ различных ситуаций, преводящих к ошибкам либо частично некорректному выполнению сценария.
  • Практическое задание.

Группа

  • 6-12 человек

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

1320 бел. р. c НДС 20%

Вендор: Linux
Код курса: Bash
Продолжительность: 3 дня / 24 ак. часа
Направление: Другие курсы Linux / UNIX
Экзамен :
Поддержка и устранение неисправностей Windows 10
10982
Минск, 29 июля - 2 августа, 17-21 февраля
Все предложения
Записаться на курс

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

Имя*

Фамилия*

Отчество*

Компания

Телефон*

Email*

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