Головна › Програмування на мові Python 1

Програмування на мові Python 1

Програмування на мові Python 1

ОПИС

Цей п’ятиденний курс адресований усім тим, хто хоче навчитися програмувати з використанням мови програмування Python.

АУДИТОРІЯ

Курс призначений для широкого кола програмістів і адміністраторів ОС.

По закінченню

Після успішного засвоєння матеріалу цього курсу слухачі будуть здатні:

  • інтерпретувати програмування для комп’ютера в термінах Python;
  • працювати з файлової системою;
  • обробляти вміст файлів і баз даних;
  • працювати зі стандартними мережевими службами;
  • використовувати регулярні вирази і запити SQL;
  • виконувати налагодження програм.
ПРОГРАМА

Вступ

  • Архітектура комп’ютера
  • Розуміння програмування
  • Слова і фрази
  • Термінологія: інтерпретатор та компілятор
  • Написання програм
  • Що таке програма?
  • Побудова частин програм
  • Вправи

Модуль 1: Змінні, вирази та інструкції

  • Значення і типи
  • Змінні
  • Імена змінних і ключові слова
  • Оператори
  • Оператори і операнди
  • Вирази
  • Порядок операцій
  • Модульні оператори
  • Строкові операції
  • Введення вхідних даних
  • Коментарі
  • Вправи

Модуль 2: Управління потоком виконання

  • Логічні вирази
  • Логічні оператори
  • Умовне виконання
  • Альтернативне виконання
  • Послідовність умов
  • Вкладені умови
  • Перехоплення винятків з використанням try і except
  • Вправи

Модуль 3: Функції

  • Виклик функції
  • Вбудовані функції
  • Функції, що перетворюють типи
  • Випадкові числа
  • Математичні функції
  • Додавання нових функцій
  • Визначення і використання
  • Потік виконання
  • Параметри і аргументи
  • Fruitful-функції і void-функції
  • Застосування функцій
  • Вправи

Модуль 4: Цикли

  • Оновлення змінної
  • Інструкція while
  • Нескінченні цикли
  • «Нескінченні цикли» і break
  • Завершення ітерації за допомогою continue
  • Визначення циклів за допомогою for
  • Шаблони циклу
  • Вправи

Модуль 5: Рядки

  • Рядок як послідовність
  • Отримання довжини рядка з використанням len
  • Обхід через рядок за допомогою циклу
  • Зріз рядки
  • Рядки є незмінними
  • Цикли і рахунок
  • Оператор in
  • Порівняння рядків
  • Строкові методи
  • Розбір (parsing) рядків
  • Оператор форматування
  • Вправи

Кейс. Обробка текстів

  • Читання списків слів
  • Пошук
  • Цикли з індексами
  • Вправи

Модуль 6: Файли

  • Необхідна введення
  • Відкриття файлів
  • Текстовий файл і рядки
  • Читання з файлів
  • Пошук через файл
  • Вибір імені файлу
  • Запис в файли
  • вправи

Модуль 7: Списки

  • Список як послідовність
  • Зміна списків
  • Обхід списку
  • Оператори списку
  • Зріз списку
  • Методи списків
  • Видалення елементів
  • Списки і функції
  • Списки і рядки
  • Розбір списків
  • Об’єкти і значення
  • Синонімічно
  • Список аргументів
  • Вправи

Модуль 8: Словники

  • Словник як набір лічильників
  • Словники та файли
  • Цикли і словники
  • Розширений розбір тексту
  • вправи

Модуль 9: Кортежі

  • Кортежі не змінні
  • Порівняння кортежів
  • Призначення кортежів
  • Словники і кортежі
  • Використання кортежів як ключів словників
  • Рядки, списки і кортежі – послідовності
  • Вправи

Кейс. Вибір діапазону значень зі структури даних

  • Частотний словник
  • Випадкові числа
  • Гістограми слів
  • Найпоширеніші слова
  • Опціональні параметри
  • Віднімання словників
  • Випадкові слова
  • Аналіз Маркова
  • Структури даних
  • Вправи

Модуль 10: Регулярні вирази

  • Спеціальні символи в регулярних виразах
  • Витяг даних з використанням регулярних виразів
  • Об’єднання пошуку та вилучення
  • Ескейп-послідовності
  • Розширені можливості в середовищі * NIX
  • Вправи

Модуль 13: Робота з базами даних і використання SQL

  • Що таке база даних?
  • Концепція бази даних
  • SQLite менеджер і Firefox доповнення
  • Створення таблиці бази даних
  • Огляд Structured Query Language (SQL)
  • Спайдерінг Twitter за допомогою бази даних
  • Моделювання даних
  • Програмування з використанням декількох таблиць
  • Три типу ключів
  • Витяг даних за допомогою JOIN
  • Вправи

Кейс. Tkinter

  • GUI (графічний інтерфейс)
  • Кнопки і зворотні виклики
  • Віджет canvas
  • Послідовність з координат
  • Упаковка віджетів
  • Меню і об’єкт Callable
  • Зв’язок
  • Вправи

Модуль 14: Автоматизація повсякденних завдань

  • Імена файлів і шляхи
  • Аргументи командного рядка
  • «Трубопроводи»
  • Вправи

Головна › BASH Програмування

BASH Програмування

BASH Програмування

ПРО КУРСИ

Цей курс призначений для користувачів систем * NIX, які використовують ці системи на регулярній основі. Матеріал цього курсу і матеріал лабораторних робіт спроектовані з урахуванням того, що слухачі в майбутньому будуть виконувати функції системних адміністраторів і / або адміністраторів мережі.

У цьому курсі міститься безліч прикладів, які покликані допомогти слухачам отримати більш глибокі знання і вміння, а також перевірити ці знання на практиці. Приклади є невеликими, функціонально закінчені фрагменти коду shell-сценаріїв і сценаріїв з використанням awk. Приклади є невід’ємною частиною матеріалу курсу і використовуються як базові шаблони формування первинних навичок розробки сценаріїв. Кожен модуль завершується лабораторної роботою. Лабораторні роботи є невеликими дослідженнями, які слухачі повинні виконати самостійно.

АУДИТОРІЯ

Курс адресований в першу чергу «просунутим» користувачам, чинним і майбутнім адміністраторам * NIX систем, а також всім тим, хто використовує в своїй роботі оболонки * NIX.

ВИМОГИ ДО СЛУХАЧІВ

Слухачі повинні мати знання в обсязі курсу «Основи роботи в середовищі UNIX» або аналогічного йому. Попередніх знань з програмування в середовищі Shell не потрібно.

Бажаний досвід адміністрування операційних систем * NIX.

ПІСЛЯ ЗАКІНЧЕННЯ КУРСУ

Слухачі будуть здатні:

  • Створювати, редагувати і тестувати сценарії.
  • Використовувати змінні оточення і спеціальні символи shell.
  • Використовувати змінну «статус повернення».
  • Обробляти аргументи командного рядка.
  • Керувати повідомленнями про помилки та інші виняткових ситуаціях.
  • Використовувати логічні конструкції і конструкції циклів.
  • Використовувати целочисленную арифметику.
  • Обробляти сигнали до процесів.
  • Використовувати регулярні вирази (утиліти grep, sed, і awk).
  • Створювати невеликі сценарії sed для не інтерактивні редагування тексту.
  • Створювати сценарії awk.

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

Модуль 1 – Введення в Shell програмування

  • Процес створення сценарію для shell.
  • Процес обробки команд оболонкою shell.
  • Як shell виконує команди.
  • Як деякі установки середовища виконання впливають на виконання сценарію.
  • Як підготувати файл для виконання його в якості сценарію shell.
  • Огляд основних властивостей інтерпретатора BASH.

Модуль 2 – Сценарії Shell

  • Загальна структура сценарію.
  • Як уточняти ім’я інтерпретатора, який буде використовуватися для обробки команд тіла сценарію.
  • Як створювати і виконувати прості сценарії shell.
  • Коментарі в сценаріях.
  • Як правильно завершити сценарій.

Модуль 3 – Змінні

  • Як створювати змінні shell.
  • Як створити і використовувати змінні в тілі сценарію.
  • Як помітити змінні для експортування в породжуваний процес.
  • Як отримати значення змінної.
  • Як використовувати конкатенацію змінних і операції з підрядками.
  • Як використовувати «зрізи» рядків

Модуль 4 – Введення даних

  • Як присвоїти значення змінним за допомогою команди read.
  • Як отримати доступ до параметрів командного рядка.
  • Як перевірити параметри на вміст (на значення).
  • Як встановити умовчання для змінних.
  • Як використовувати вбудовані змінні shell мають відношення до параметрів командного рядка.

Модуль 5 – Проектування виведення сценарію

  • Як використовувати команди typeset, declare
  • Як управляти виведенням за допомогою лапок.
  • Як використовувати основні можливості терміналу.
  • Як використовувати команду tput для управління поданням на екрані термінали.
  • Як управляти місцеположенням курсора.
  • Як відключати ехопечать терміналу за допомогою команди stty.

Модуль 6 – Арифметика Shell

  • Як декларувати змінні цілого типу за допомогою typedef, declare.
  • Як призначати значення змінним за допомогою команди let
  • Як призначати значення змінним з використанням синтаксису ((…))
  • Використання арифметичних операторів.
  • Як працювати з цілими, мають різний підставу системи числення.
  • Як використовувати інструменти * NIX для обчислення значень виразів.

Модуль 7 – Розгалуження і логічні перевірки

  • Як вивести на екран значення статусу повернення попередньої командного рядка
  • Як використовувати логічні операції у вигляді команди ((…))
  • Застосування команди test для оцінки логічних значень
  • Як використовувати альтернативи команди test – […], [[…]]
  • Як виконувати командний рядок тільки коли логічні стану TRUE або FALSE
  • Як застосовувати керуючу послідовність if … then … fi.
  • Як застосовувати альтернативне розгалуження elif
  • Як використовувати конструкції case … esac для вибору з безлічі альтернатив
  • Як застосовувати аналіз збігу за шаблоном в конструкції case … esac

Модуль 8 – Шаблони Shell

  • Прості шаблони Shell
  • Як використовувати деякі складові шаблони для генерації імен файлів
  • Як управляти обробкою шаблонів за допомогою команди shopt
  • Як використовувати шаблони і регулярні вирази для пошуку збігів

Модуль 9 – Програмні цикли

  • Поняття «програмний цикл»
  • Як управляти виконанням циклів за допомогою оператора while
  • Як управляти виконанням циклів за допомогою оператора until
  • Як управляти виконанням циклів за допомогою оператора for
  • Як перервати виконання циклу за допомогою оператора break
  • Як продовжити виконання циклу з наступної ітерації (команда continue)
  • Як завершувати роботу сценарію за допомогою команди exit
  • Як використовувати цикл типу select для конструювання структур меню.
  • Як використовувати цикл «умовний for»

Модуль 10 – Команда getopts

  • Як використовувати команду gteopts для управління опціями сценарію
  • Як визначати опції, які вимагають вказівки аргументу
  • Як використовувати спеціальні змінні OPTIND і OPTARG

Модуль 11 – Масиви змінних

  • Як зберігати множинні елементи в масивах змінних
  • Як отримувати значення одного або більше елементів масиву
  • Як отримувати кількість елементів масиву, яким присвоєно значення.
  • Як використовувати «зрізи» масивів
  • Як копіювати масиви
  • Як використовувати команду mapfile і вбудований масив MAPFILE
  • Як використовувати асоціативні масиви в BASH

Модуль 12 – Функції та бібліотеки функцій

  • Як декларувати функції shell для поточної суті shell
  • Як отримувати список поточних функцій shell за допомогою команд typeset і declare
  • Як декларувати функції shell в тілі файлу сценарію shell
  • Як передати функції один або більше аргументів
  • Як декларувати внутрішні (function-specific) змінні функції (оголошення typeset і local)
  • Як використовувати команду return для повернення значення в тіло основного сценарію
  • Як використовувати рекурсивний виклик функції
  • Як створити файл бібліотеки функцій
  • Як використовувати емуляцію механізму FPATH для пошуку бібліотек функцій в BASH

Модуль 13 – Управління введенням і виведенням

  • Застосування дескрипторів файлів (3-9) при перенаправлення вводу / виводу.
  • Як перенаправляти ввід з файлу даних в сценарій.
  • Як перенаправляти висновок зі сценарію в файл даних.
  • Як читати рядки даних в циклі while, використовуючи перенаправлення.
  • Як використовувати канал ( «труби») для передачі даних всередину циклу.
  • Як використовувати shell-управління here ( «документ тут»)

Модуль 14 – Пастки і сигнали

  • Концепція сигналів
  • Значення сигналів kill
  • Як інтерактивно обробляти сигнали
  • Як обробляти сигнали за допомогою команди kill
  • Як використовувати команду trap для обробки сигналів
  • Як використовувати команду coproc для створення сопроцесс
  • Як використовувати дескриптори файлів для організації взаємодії сопроцеесов
  • Як використовувати «внутрішні» сигнали BASH для налагодження сценаріїв
  • Як модифікувати установки терміналу для посилки сигналів інтерактивно.

Модуль 15 – Регулярні вирази

  • Цілі використання регулярних виразів
  • Як використовувати команди, в яких застосовуються регулярні вирази
  • Як описувати метасимволу регулярних виразів
  • Як використовувати команду grep для пошуку збігів з текстовими зразками.

Модуль 16 – Введення в awk

  • Як використовувати awk для виведення на друк специфікованої колонки введення.
  • Як застосовувати збіг за шаблоном expression і умовні збіги в awk.
  • Як застосовувати команди awk, що виконуються до обробки вхідного потоку із застосуванням оператора BEGIN.
  • Як застосовувати команди awk, що виконуються після обробки вхідного потоку за допомогою оператора END.
  • Як використовувати вбудовані змінні awk, такі як NF і NR.
  • Як модифікувати роздільники вхідного і вихідного потоків і використанням FS, RS, OFS і ORS змінних.
  • Як створювати і використовувати файл програми awk.
  • Як створювати і запускати на виконання сценарій awk.

Модуль 17 – Змінні, рядки і арифметичні оператори

  • Як створювати і використовувати змінні в awk
  • Як передавати змінні середовища з BASH в awk
  • Як використовувати арифметичні оператори, які підтримуються в awk
  • Як використовувати функції роботи з рядками awk
  • Як управляти форматом виведення з використанням print і printf
  • Як обмінюватися awk і shell
  • Як передати аргументи командного рядка в awk

Модуль 18 – Управління потоком виконання в awk

  • Як використовувати команду умови if
  • Як використовувати команду getline
  • Як користуватися командами next і exit.
  • Як використовувати цикли while і do-while
  • Як використовувати цикл for
  • Як створювати і використовувати одномірні і «багатовимірні» масиви
  • Як створювати і використовувати асоціативні масиви
  • Як використовувати функцію split для створення масивів
  • Як опрацьовувати дані асоціативних масивів за допомогою циклу for

Модуль 19 – Потоковий редактор sed

  • Як використовувати редактор sed для виконання підстановок заданого тексту.
  • Як використовувати sed для видалення вхідних рядків з використанням функції delete.
  • Друкувати і дублювати вхідні рядки з використанням функції print.
  • Як читати рядки з іншого файлу в потік редагування.
  • Як записувати вихідні рядки в один або більше файлів за допомогою функції write.
  • Як використовувати різні функції редагування в командному рядку.
  • Як створювати і використовувати файл функцій sed.

Головна › Програмування на мові Python для програмістів – Python 2

Програмування на мові Python для програмістів – Python 2

Програмування на мові Python для програмістів – Python 2

ОПИС

Цей п’ятиденний курс адресований слухачам, які вже мають певний досвід програмування на мові Python і програмістам, які володіють навичками програмування на таких мовах як С ++, Java, Ruby.

Основна мета цього курсу – освоєння найкращих практик вирішення широкого спектра завдань. Тут широко використовується ООП-підхід.

ВИМОГИ ДО СЛУХАЧІВ

Уміння працювати з комп’ютером на рівні користувача.

АУДИТОРІЯ
  • програмісти
  • адміністратори ОС
ПО ЗАКІНЧЕННЮ

Після успішного засвоєння матеріалу цього курсу слухачі будуть здатні

  • інтерпретувати програмування для комп’ютера в термінах Python;
  • працювати з файлової системою;
  • обробляти вміст файлів і баз даних;
  • працювати зі стандартними мережевими службами;
  • використовувати регулярні вирази і запити до баз даних;
  • виконувати налагодження програм.
ПРОГРАМА

Вступ

Як отримати та інсталювати Python 3

Модуль 1: Швидке введення в процедурне програмування

  • Створення і запуск програм на мові Python
  • Середа IDLE
  • Python. Погляд з висоти пташиного польоту
  • Погляд перший: типи даних
  • Погляд другий: посилання на об’єкти
  • Погляд третій: колекції даних
  • Погляд четвертий: логічні операції
  • Погляд п’ятий: інструкції управління потоком виконання
  • Погляд шостий: арифметичні оператори
  • Погляд сьомий: введення / виведення
  • Погляд восьмий: створення і виклик функцій
  • Вправи

Модуль 2: Типи даних

  • Ідентифікатори і ключові слова
  • Цілочисельні типи
  • Тип чисел з плаваючою точкою
  • Рядки
  • Кейс. Квадратне рівняння
  • Кейс. Обробка тексту. Представлення даних в форматі HTML
  • Вправи

Модуль 3: Типи колекцій

  • Послідовності
  • Безлічі
  • Відображення
  • Кейс. Обхід в циклі і копіювання колекцій
  • Кейс. Генерація імен користувачів
  • Кейс. Статистика
  • Вправи

Модуль 4: Керуючі структури і функції

  • Керуючі структури
  • Умовне розгалуження
  • Цикли
  • Обробка винятків
  • Перехоплення і збудження винятків
  • Власні виключення
  • Власні функції
  • Імена і рядки документування
  • Розпакування аргументів і параметрів
  • Доступ до змінних в глобальному контексті
  • Лямбда-функції
  • Твердження
  • Кейс. Створити сайт вручну
  • Вправи

Модуль 5: Модулі

  • Модулі та пакети
  • Огляд стандартної бібліотеки мови Python
  • Вправи

Модуль 6: Об’єктно-орієнтоване програмування

  • Об’єктно-орієнтований підхід
  • Власні класи
  • Атрибути і методи
  • Спадкування і поліморфізм
  • Використання властивостей для управління доступом до атрибутів
  • Створення повних і повністю інтегрованих типів даних
  • Власні класи колекцій
  • Кейс. Створення класів, що включають колекції
  • Кейс. Створення класів колекцій за допомогою агрегування
  • Кейс. Створення класів колекцій за допомогою успадкування
  • Вправи

Модуль 7: Робота з файлами

  • Запис і читання двійкових даних
  • Консервування з можливим стисненням
  • Неформатовані двійкові дані з можливим стисненням
  • Запис і синтаксичний аналіз текстових файлів
  • Запис тексту
  • Кейс. Синтаксичний аналіз тексту
  • Кейс. Синтаксичний аналіз тексту за допомогою регулярних виразів
  • Запис і синтаксичний аналіз файлів XML
  • Дерева елементів
  • DOM (Document Object Model – об’єктна модель документа)
  • Запис файлу XML вручну
  • Синтаксичний аналіз файлів XML за допомогою SAX (Simple API for XML – спрощений API для XML)
  • Довільний доступ до двійковим даними в файлах
  • Універсальний клас BinaryRecordFile
  • Кейс. Класи в модулі BikeStock
  • Вправи

Модуль 8: Набір кейсів

  • Прийоми процедурного програмування
  • Розгалуження з використанням словників
  • Вирази-генератори і функції-генератори
  • Динамічне виконання програмного коду і динамічне імпортування
  • Локальні і рекурсивні функції
  • Декоратори функцій і методів
  • Анотації функцій
  • Прийоми об’єктно-орієнтованого програмування
  • Управління доступом до атрибутів
  • Функтори
  • Менеджери контексту
  • Дескриптори
  • Декоратори класів
  • Абстрактні базові класи
  • Множинне спадкування
  • Метакласи
  • Функціональне програмування
  • Частково підготовлені функції
  • Кейс. Атрибути класу з вбудованою перевіркою коректності
  • Вправи

Модуль 9: Процеси і потоки

  • Делегування роботи процесам
  • Делегування роботи потокам виконання
  • Кейс. Багатопотокова програма пошуку слова
  • Кейс. Багатопотокова програма пошуку дублікатів файлів
  • Вправи

Модуль 10: Мережі

  • Кейс. клієнт TCP
  • Кейс. сервер TCP
  • Вправи

Модуль 11: Програмування додатків баз даних

  • Бази даних DBM
  • Бази даних SQL
  • Вправи

Модуль 12: Регулярні вирази

  • Мова регулярних виразів в Python
  • Символи і класи символів
  • Квантіфікатори
  • Угруповання і збереження
  • Перевірки і прапори
  • Модуль для роботи з регулярними виразами
  • Вправи

Модуль 13: Вступ в програмування графічного інтерфейсу

  • Кейс. Програма у вигляді діалогу
  • Програми з головним вікном
  • Створення головного вікна
  • Створення власного діалогу
  • Вправи

Головна › POSIX Shell – Програмування

POSIX Shell – Програмування

POSIX Shell – Програмування

ПРО КУРС

Цей курс призначений для користувачів систем * NIX, які використовують ці системи на регулярній основі. Матеріал цього курсу і матеріал лабораторних робіт побудовані з урахуванням того, що слухачі в майбутньому будуть виконувати функції системних адміністраторів або адміністраторів мережі.

У цьому курсі міститься безліч прикладів, які покликані допомогти слухачам отримати більш глибокі знання і вміння, а також перевірити ці знання на практиці. Приклади є невеликими вправи по написанню shell-сценаріїв і сценаріїв з використанням awk. Приклади є невід’ємною частиною лекційного матеріалу і приїду не в ознайомлювальних цілях, а в якості вправ, які повинні виконувати слухачі. Кожен модуль завершується лабораторної роботою. Лабораторні роботи є невеликими дослідженнями, які слухачі повинні виконати самостійно.

АУДИТОРІЯ

Курс адресований в першу чергу «просунутим» користувачам, чинним і майбутнім адміністраторам * NIX систем, а також всім, хто використовує в своїй роботі оболонки * NIX (ksh, bash, dash, ash, posix і т.д.)

ПІСЛЯ ЗАКІНЧЕННЯ КУРСУ

Слухачі будуть здатні:

  • Створювати, редагувати і тестувати сценарії.
  • Використовувати змінні оточення і спеціальні символи shell.
  • Використовувати регулярні вирази (утиліти grep, sed, і awk).
  • Створювати сценарії sed для не інтерактивні редагування тексту.
  • Створювати сценарії awk.
  • Використовувати змінну-статус повернення.
  • Обробляти аргументи командного рядка.
  • Керувати повідомленнями про помилки та інші виняткових ситуаціях.
  • Використовувати логічні конструкції і конструкції циклів.
  • Використовувати целочисленную арифметику.
  • Обробляти сигнали до процесів.
ПРОГРАМА КУРСУ

Модуль 1 – Введення в POSIX Shell програмування

  • Процес створення сценарію для POSIX shell.
  • Процес обробки команд оболонкою shell.
  • Як shell виконує команди.
  • Як деякі установки середовища виконання впливають на виконання сценарію.
  • Як підготувати файл для виконання його в якості сценарію shell.
  • Огляд основних властивостей інтерпретатора POSIX shell.

Модуль 2 – Сценарії Shell

  • Загальна структура сценарію.
  • Як уточняти ім’я інтерпретатора, який буде використовуватися для обробки команд тіла сценарію.
  • Як створювати і виконувати прості сценарії shell.
  • Коментарі в сценаріях.
  • Як правильно завершити сценарій.

Модуль 3 – Змінні

  • Як створювати змінні POSIX shell.
  • Як створити і використовувати змінні в тілі сценарію.
  • Як помітити змінні для експортування в породжуваний процес.
  • Як отримати значення змінної.
  • Як використовувати конкатенацію змінних і підрядка.

Модуль 4 – Введення даних

  • Як присвоїти значення змінним за допомогою команди read.
  • Як отримати доступ до параметрів командного рядка.
  • Як перевірити параметри на вміст (на значення).
  • Як встановити умовчання для змінних.
  • Як використовувати вбудовані змінні Shell мають відношення до параметрів командного рядка.

Модуль 5 – Проектування виведення сценарію

  • Атрибути змінних, що містять строкові дані.
  • Як використовувати команду typeset.
  • Як управляти виведенням за допомогою лапок.
  • Основи використання можливостей терміналу.
  • Як використовувати команду tput для зміни місця розташування виведення на екрані.
  • Як управляти місцеположенням курсора.
  • Як відключати ехопечать терміналу за допомогою команди stty.

Модуль 6 – Арифметика Shell

  • Як декларувати змінні цілого типу за допомогою typedef
  • Як призначати значення змінним за допомогою команди let
  • Як призначати значення змінним з використанням синтаксису ((…))
  • Використання арифметичних операторів.
  • Як працювати з цілими, мають різний підставу системи числення.
  • Як використовувати інструменти для обчислення значень виразів.

Модуль 7 – Розгалуження і логічні перевірки

  • Як вивести на екран значення статусу повернення попередньої командного рядка
  • Як використовувати логічні операції у вигляді команди ((…))
  • Застосування команди test для оцінки логічних значень
  • Як використовувати альтернативи команди test – […], [[…]]
  • Як виконувати командний рядок тільки коли логічні стану TRUE або FALSE
  • Як застосовувати керуючу послідовність if … then … fi.
  • Як застосовувати альтернативне розгалуження elif
  • Як використовувати конструкції case … esac для вибору з безлічі альтернатив
  • Як застосовувати аналіз збігу за шаблоном в конструкції case … esac

Модуль 8 – Шаблони Shell

  • Прості шаблони Shell
  • Як використовувати деякі складові шаблони для генерації імен файлів
  • Як використовувати шаблони і регулярні вирази для пошуку збігів

Модуль 9 – Програмні цикли

  • Поняття «програмний цикл»
  • Як управляти виконанням циклів за допомогою оператора while
  • Як управляти виконанням циклів за допомогою оператора until
  • Як управляти виконанням циклів за допомогою оператора for
  • Як перервати виконання циклу за допомогою оператора break
  • Як продовжити виконання циклу з даної точки (команда continue)
  • Як завершувати роботу сценарію за допомогою команди exit
  • Як використовувати цикл типу select для конструювання структур меню.

Модуль 10 – Команда getopts

  • Як використовувати команду gteopts для управління опціями сценарію
  • Як визначати опції, які вимагають вказівки аргументу
  • Як використовувати спеціальні змінні OPTIND і OPTARG

Модуль 11 – Масиви змінних

  • Як зберігати множинні елементи в масивах змінних
  • Як отримувати значення одного або більше елементів масиву
  • Як отримувати кількість елементів масиву, яким присвоєно значення.

Модуль 12 – Функції та бібліотеки функцій

  • Як декларувати функції shell для поточної суті shell
  • Як отримувати список поточних функцій shell за допомогою команди typeset -f
  • Як декларувати функції shell в тілі файлу сценарію shell
  • Як передати функції один або більше аргументів
  • Як декларувати внутрішні (function-specific) змінні функції
  • Як використовувати команду return для повернення значення в тіло основного сценарію
  • Як використовувати рекурсивний виклик функції
  • Як створити файл бібліотеки функцій
  • Як використовувати змінну $ FPATH для пошуку бібліотек функцій
  • Як використовувати команду autoload для декларування функцій.

Модуль 13 – Управління введенням і виведенням

  • Застосування дескрипторів файлів (3-9) при перенаправлення вводу / виводу.
  • Як перенаправляти введення з файлу даних в сценарій.
  • Як перенаправляти висновок зі сценарію в файл даних.
  • Як читати рядки даних в циклі while, використовуючи перенаправлення.
  • Як використовувати канал ( «труби») для передачі даних всередину циклу.
  • Як використовувати shell-управління here ( «документ тут»)

Модуль 14 – Пастки і сигнали

  • Концепція сигналів
  • Значення сигналів kill
  • Як інтерактивно обробляти сигнали
  • Як обробляти сигнали за допомогою команди kill
  • Як використовувати команду trap для обробки сигналів
  • Як модифікувати установки терміналу для посилки сигналів інтерактивно.

Модуль 15 – Регулярні вирази

  • Цілі використання регулярних виразів
  • Як використовувати команди, в яких застосовуються регулярні вирази
  • Як описувати метасимволу регулярних виразів
  • Як використовувати команду grep для пошуку збігів з текстовими зразками.

Модуль 16 – Введення в awk

  • Як використовувати awk для виведення на друк специфікованої колонки введення.
  • Як застосовувати збіг за шаблоном expression і умовні збіги в awk.
  • Як застосовувати команди awk, що виконуються до обробки вхідного потоку із застосуванням оператора BEGIN.
  • Як застосовувати команди awk, що виконуються після обробки вхідного потоку за допомогою оператора END.
  • Як використовувати вбудовані змінні awk, такі як NF і NR.
  • Як модифікувати роздільники вхідного і вихідного потоків і використанням FS, RS, OFS і ORS змінних.
  • Як створювати і використовувати файл програми awk.
  • Як створювати і запускати на виконання сценарій awk.

Модуль 17 – Змінні, рядки і арифметичні оператори

  • Як створювати і використовувати змінні в awk
  • Як передавати змінні середовища з POSIX Shell в awk
  • Як використовувати арифметичні оператори, які підтримуються в awk
  • Як використовувати функції роботи з рядками awk
  • Як управляти форматом виведення з використанням print і printf
  • Як спільно використовувати awk і shell
  • Як передати аргументи командного рядка в awk

Модуль 18 – Управління потоком виконання в awk

  • Як використовувати команду умови if
  • Як використовувати команду getline
  • Як користуватися командами next і exit.
  • Як використовувати цикли while і do-while
  • Як використовувати цикл for
  • Як створювати і використовувати одномірні і «багатовимірні» масиви
  • Як створювати і використовувати асоціативні масиви
  • Як використовувати функцію split для створення масивів
  • Як обробляти дані асоціативних масивів за допомогою циклу for

Модуль 19 – Потоковий редактор sed

  • Як використовувати редактор sed для виконання підстановок заданого тексту.
  • Як використовувати sed для видалення вхідних рядків з використанням функції delete.
  • Друкувати і дублювати вхідні рядки з використанням функції print.
  • Як читати рядки з іншого файлу в потік редагування.
  • Як записувати вихідні рядки в один або більше файлів за допомогою функції write.
  • Як використовувати різні функції редагування в командному рядку.
  • Як створювати і використовувати файл функцій sed.
ВИМОГИ ДО СЛУХАЧІВ

Слухачі повинні мати знання в обсязі курсу «Основи роботи в середовищі UNIX» або аналогічного йому. Попередніх знань з програмування в середовищі Shell не потрібно.

Бажаний досвід адміністрування операційних систем * NIX.