Advanced Bash Scripting (Adv-Bash)

Данный курс рассчитан на студентов, желающих научиться писать собственные скрипты и использовать все доступные возможности языка Bash. В курсе рассматриваются вопросы написания, отладки и тестирования приложений, а также использование таких потоковых редакторов как sed, и awk. Кроме этого слушатели научатся работать с регулярными выражениями и использовать их для нахождения нужной информации и при обработке текстовых файлов.

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

Слушателям для успешного изучения данного курса необходимо иметь следующие предварительные знания и навыки: 
  • Основы работы в Linux/GNU (UNIX) и редакторе VI 
  • Желательно знакомство с основными командами Linux/GNU (UNIX), включая: rm, cp, man, more, mkdir, ps and chmod. 
  • Манипулирование файлами и директориями, создание и редактирование файлов 
  • Знакомство с основами управления процессами и правами доступа к файлам 
  • Знакомство о основами перенаправления ввода/вывода 

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

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

  • Зачем необходимо знание языка Shell?
  • Для начала о Sha-Bang.
  • Запуск сценария.

Модуль 2. Основы

  • Служебные символы.
  • Подстановка переменных.
  • Присваивание значений переменным.
  • Переменные Bash не имеют типа.
  • Специальные типы переменных.
  • Кавычки.
  • Завершение и код завершения.

Модуль 3. Проверка условий

  • Конструкции проверки условий (if).
  • Ветвления Else if и elif.
  • Операции проверки файлов.
  • Операции сравнения.
  • Вложенные условные операторы if/then.
  • Упражнение.

Модуль 4. Операции и смежные темы.

  • Операторы.
  • Числовые константы.
  • Внутренние переменные.
  • Работа со строками.
  • Использование awk при работе со строками.
  • Дальнейшее обсуждение.
  • Подстановка параметров.
  • Объявление переменных: declare и typeset.
  • Косвенные ссылки на переменные.
  • $RANDOM: генерация псевдослучайных целых чисел.
  • Двойные круглые скобки.

Модуль 5. Циклы и ветвления

  • Циклы.
  • Вложенные циклы.
  • Управление ходом выполнения цикла.
  • Операторы выбора.

Модуль 6. Внутренние команды.

  • Внутренние команды.
  • Ввод/вывод.
  • Файловая система.
  • Переменные.
  • Управление сценарием.
  • Команды.
  • Команды управления заданиями.

Модуль 7. Внешние команды, программы и утилиты.

  • Базовые команды.
  • Более сложные команды.
  • Команды для работы с датой и временем.
  • Команды обработки текста.
  • Команды для работы с файлами и архивами.
  • Команды для работы с сетью.
  • Команды управления терминалом.
  • Команды выполнения математических операций.
  • Прочие команды.

Модуль 8. Команды системного администрирования.

  • Системный журнал.
  • Управление заданиями.
  • Команды управления процессами и загрузкой.
  • Команды для работы с сетью.
  • Команды для работы с файловыми системами.
  •  Команды резервного копирования.
  • Команды управления системными ресурсами.
  • Команды для работы с модулями ядра.
  • Прочие команды.

Модуль 9. Подстановка команд.

  • Арифметические подстановки.
  • Перенаправление ввода/вывода.
  • С помощью команды exec.
  • Перенаправление для блоков кода.
  •  Область применения.

Модуль 10. Встроенные документы

Модуль 11. Регулярные выражения

  • Регулярные выражения. Globbing -- Подстановка имен файлов

Модуль 12. Глава 19. Подоболочки, или Subshells

  • Списки команд и массивы.
  • Ограниченный режим командной оболочки.
  • Подстановка процессов.
Модуль 13. Функции
  • Основы работы с функциями. 
  • Сложные функции и сложности с функциями. 
  • Перенаправление. 
  • Локальные переменные. 
  • Локальные переменные делают возможной рекурсию. 
  • Псевдонимы. 

Модуль 14. Дополнительные вопросы по оболочке shell

  • Списки команд.
  • Массивы.

Модуль 15. Работа с файлами и устройствами

  • Файлы. /dev и /proc. /dev/zero и /dev/null

Модуль 16. Отладка сценариев

  • Отладка сценариев.
  • Необязательные параметры (ключи).
  • Широко распространенные ошибки.
  • Стиль программирования.
  • Неофициальные рекомендации по оформлению сценариев.

Модуль 17. Разное

  • Интерактивный и неинтерактивный режим работы.
  • Сценарии-обертки. Операции сравнения:
  • Альтернативные решения.
  • Рекурсия.
  • "Цветные" сценарии.
  • Оптимизация.
  • Разные советы.
  • Проблемы безопасности.
  •  Проблемы переносимости.
  • Сценарии командной оболочки под Windows

Модуль 18. Bash, версия 2 и выше

Модуль 19. Учебник по Sed и Awk

По окончании курса слушатели получат сертификат Учебного центра Softline.

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

Вендор: Linux
Код курса: Adv-Bash
Продолжительность: 5 дней / 40 часов
Направление: UNIX
Экзамен : n/a
Записаться на курс

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

Ваше имя и фамилия*

Компания*

Телефон*

Email*