Shell програмирование

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

Після закінчення цього курсу ви зможете:

  • Писати, редагувати та тестувати скрипти
  • Використовувати змінні оточення і спеціальні символи shell
  • Використовувати регулярні вирази разом з утилітами grep, sed, awk
  • Писати скрипти sed для потокового редагування тексту
  • Писати скрипти awk для маніпулювання файлами і окремими полями
  • Використовувати статус exit для визначення правильності виконання команди
  • Обробляти аргументи командного рядка передані скрипту
  • Розробляти повідомлення про помилки, якщо скрипт завершився неправильно
  • Використовувати логічні конструкції і конструкції циклів
  • Проводити маніпуляції і арифметику з змінними
  • Модуль 1. Введення
    • Навіщо необхідно знання мови Shell?
    • Для початку про Sha-Bang
    • Запуск сценарію
  • Модуль 2. Основи
    • Службові символи
    • Підстановка змінних
    • Присвоювання значень змінним
    • Змінні Bash не мають типу
    • Спеціальні типи змінних
    • Лапки
    • Завершення та код завершення
  • Модуль 3. Перевірка умов
    • Конструкції перевірки умов (if)
    • Розгалуження Else if і
    • Операції перевірки файлів
    • Операції порівняння
    • Вкладені умовні оператори if/then
    • Вправа
  • Модуль 4. Операції та суміжні теми
    • Оператори
    • Числові константи
    • Внутрішні змінні
    • Робота з рядками
    • Використання awk при роботі з рядками
    • Подальше обговорення
    • Підстановка параметрів
    • Оголошення змінних: declare і typeset
    • Непрямі посилання на змінні
    • RANDOM: генерація випадкових цілих чисел
    • Подвійні круглі дужки
  • Модуль 5. Цикли і розгалуження
    • Цикли
    • Вкладені цикли
    • Управління ходом виконання циклу
    • Оператори вибору
  • Модуль 6. Внутрішні команди
    • Внутрішні команди
    • Введення/виведення
    • Файлова система
    • Змінні
    • Управління сценарієм
    • Команди
    • Команди управління завданнями
  • Модуль 7. Зовнішні команди, програми і утиліти
    • Базові команди
    • Більш складні команди
    • Команди для роботи з датою і часом
    • Команди обробки тексту
    • Команди для роботи з файлами й архівами
    • Команди для роботи з мережею
    • Команди керування терміналом
    • Команди для виконання математичних операцій
    • Інші команди
  • Модуль 8. Команди системного адміністрування
    • Системний журнал
    • Управління завданнями
    • Команди управління процесами і завантаженням
    • Команди для роботи з мережею
    • Команди для роботи з файловими системами
    • Команди резервного копіювання
    • Команди керування системними ресурсами
    • Команди для роботи з модулями ядра
    • Інші команди
  • Модуль 9. Підстановка команд
    • Арифметичні підстановки
    • Перенаправлення вводу/виводу
    • З допомогою команди exec
    • Перенаправлення для блоків коду
    • Область застосування
  • Модуль 10. Вбудовані документи
  • Модуль 11. Регулярні вирази
    • Регулярні вирази. Globbing -- Підстановка імен файлів
  • Модуль 12. Підоболочки, або Subshells
    • Списки команд та масиви
    • Обмежений режим командної оболонки.
    • Підстановка процесів
  • Модуль 13. Функції
    • Основи роботи з функціями
    • Складні функції і складності з функціями
    • Перенаправлення
    • Локальні змінні
    • Локальні змінні роблять можливою рекурсію
    • Псевдоніми
  • Модуль 14. Додаткові питання по оболонці shell
    • Списки команд
    • Масиви
  • Модуль 15. Робота з файлами і пристроями
    • Файли. /dev /proc. /dev/zero і /dev/null
  • Модуль 16. Налагодження сценаріїв
    • Налагодження сценаріїв
    • Необов'язкові параметри (ключі)
    • Широко поширені помилки
    • Стиль програмування
    • Неофіційні рекомендації щодо оформлення сценаріїв
  • Модуль 17. Різне
    • Інтерактивний і неінтерактивний режим роботи
    • Сценарії-обгортки. Операції порівняння:
    • Альтернативні рішення
    • Рекурсія
    • Кольорові сценарії
    • Оптимізація
    • Різні поради
    • Проблеми безпеки
    • Проблеми переносимості
    • Сценарії командної оболонки під Windows
  • Модуль 18. Bash, версія 2 і вище
  • Модуль 19. Підручник з Sed і Awk
  • Знайомство з основами роботи в Linux/GNU (UNIX) і редакторі VI
  • Бажано, щоб студент був знайомий з основними командами Linux/GNU (UNIX), включаючи: rm, cp, man, more, mkdir, ps and chmod
  • Маніпулювання файлами і директоріями, створення і редагування файлів
  • Знайомі з основами управління процесами і правами доступу до файлів
  • Знайомі про основами перенаправлення вводу/виводу

Запис на курс

Код курсуADV-BASH
Тривалість5 д (40год)
Код екзамену
Вартість без ПДВ12 000 грн.
Найближчі дати
  • 13.11.2017