Курс на Stepik
Обложка курса «Эффективная работа с PowerShell: написание качественных скриптов» на Stepik
999 ₽

Эффективная работа с PowerShell: написание качественных скриптов ★ 0.000

Открыть на
STEPIK.ORG

Курс о том, как писать скрипты и модули на PowerShell 7 так, чтобы их можно было отдать коллегам, поставить в планировщик и сопровождать годами. Для разработчиков и инженеров уровня middle, которые пришли из других языков: Python, Bash, C#, Go, Java. Сквозной проект — модуль мониторинга Vigil, который вы соберёте от первого скрипта до релиза с тестами, CI и публикацией в репозиторий пакетов.

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Эффективная работа с PowerShell: написание качественных скриптов»Учеников на курсе 0
Сертификаты, выданные на курсе «Эффективная работа с PowerShell: написание качественных скриптов»Сертификатов выдано 0
Отзывы о курсе «Эффективная работа с PowerShell: написание качественных скриптов»Отзывов получено 0
Рейтинг курса «Эффективная работа с PowerShell: написание качественных скриптов»Рейтинг курса 0.000
Уроки в курсе «Эффективная работа с PowerShell: написание качественных скриптов»Количество уроков 99
Тесты в курсе «Эффективная работа с PowerShell: написание качественных скриптов»Количество квизов 56
Стоимость курса «Эффективная работа с PowerShell: написание качественных скриптов»Стоимость курса 999 ₽ —
Обновления курса «Эффективная работа с PowerShell: написание качественных скриптов»Обновления курса — —
Дата публикации курса «Эффективная работа с PowerShell: написание качественных скриптов»Дата публикации курса — ———
Последнее обновление курса «Эффективная работа с PowerShell: написание качественных скриптов»Последнее обновление — ———
Сложность normal — ———

Содержание курса

Разделы в курсе «Эффективная работа с PowerShell: написание качественных скриптов» 12 разделов Уроки в курсе «Эффективная работа с PowerShell: написание качественных скриптов» 99 уроков Тесты в курсе «Эффективная работа с PowerShell: написание качественных скриптов» 56 тестов Последнее обновление курса «Эффективная работа с PowerShell: написание качественных скриптов» обн. 29 октября 2026

PowerShell 7 как платформа — движок, окружение, первый скрипт

8 уроков
1. PowerShell 7 против Windows PowerShell 5.1 — что вы получаете ↗
2. Рабочее окружение — pwsh, профили, PSReadLine, VS Code ↗
3. Объекты вместо текста — главное отличие от Bash и cmd ↗
4. Единицы кода — командлеты, функции, скрипты, модули ↗
5. Исследование системы — Get-Help, Get-Command, Get-Member, about_ ↗
6. Сквозной проект Vigil — задача и план роста модуля ↗
7. Первый серьёзный скрипт — #Requires, StrictMode, кодировка ↗
8. Практика — каркас репозитория Vigil ↗

Язык — система типов, строки, коллекции, управление потоком

9 уроков
1. Типы .NET в PowerShell — литералы, приведение, типизация ↗
2. Строки — интерполяция, here-strings, -f, культура, кодировки ↗
3. Числа, даты, интервалы и единицы измерения ↗
4. Операторы сравнения и логики — регистр, шаблоны, коллекции ↗
5. Массивы и списки — неизменяемость, List[T], += как антипаттерн ↗
6. Хеш-таблицы, упорядоченные словари и PSCustomObject ↗
7. $null, пустые коллекции и авто-развёртывание ↗
8. Управление потоком — if, switch с -regex и -wildcard, циклы ↗
9. Практика — модель данных Vigil на PSCustomObject ↗

Конвейер и потоки вывода

8 уроков
1. Как работает конвейер — begin, process, end и потоки ↗
2. Where-Object, ForEach-Object, Select-Object — фильтр и проекция ↗
3. Sort-Object, Group-Object, Measure-Object, Compare-Object ↗
4. Форматирование вывода — Format-Table, Format-List, Out- ↗
5. Шесть потоков — Output, Error, Warning, Verbose, Debug, Info ↗
6. Вывод функций — Write-Output, return, Write-Host ↗
7. Операторы PowerShell 7 — тернарный, null-операторы, цепочки ↗
8. Практика — конвейер обработки результатов Vigil ↗

Функции и параметры — advanced functions

9 уроков
1. Простые и advanced functions — что даёт CmdletBinding ↗
2. Параметры — Parameter, Mandatory, Position, конвейер ↗
3. Валидация параметров — атрибуты Validate и ArgumentCompleter ↗
4. Наборы параметров и динамические параметры ↗
5. Splatting, $PSBoundParameters и $PSDefaultParameterValues ↗
6. SupportsShouldProcess — -WhatIf и -Confirm для опасных операций ↗
7. Возврат значений — OutputType, разворачивание, NoEnumerate ↗
8. Comment-based help — документируем функции как командлеты ↗
9. Практика — Test-VigilHttp и Test-VigilTcp как advanced functions ↗

Ошибки и надёжность

8 уроков
1. Два вида ошибок — terminating и non-terminating ↗
2. try, catch, finally, throw, типизированные catch ↗
3. ErrorRecord под лупой — $_, $Error, InvocationInfo, Get-Error ↗
4. Ошибки нативных команд — $LASTEXITCODE, stderr, коды возврата ↗
5. Write-Error правильно — ErrorId, WriteError, ThrowTerminating ↗
6. Повторы, таймауты и защитные обёртки — Invoke-VigilRetry ↗
7. Собственные исключения и коды ошибок ↗
8. Практика — устойчивое выполнение проверок Vigil ↗

Модули — структура, манифест, области видимости, публикация

9 уроков
1. Script module и манифест — psm1, psd1, Test-ModuleManifest ↗
2. Структура модуля — Public, Private, Export-ModuleMember ↗
3. Области видимости — scope, script, global, модуль как замыкание ↗
4. Версии и зависимости — RequiredModules, PSEdition, Prerelease ↗
5. Загрузка модулей — PSModulePath, автозагрузка, Import-Module ↗
6. Форматы и типы модуля — ps1xml, FormatData, TypeData ↗
7. PSResourceGet — установка, репозитории, публикация ↗
8. Сборка модуля — build.ps1, один файл, версия из CI ↗
9. Практика — модуль Vigil с манифестом ↗

Классы, enum и объектная модель

8 уроков
1. class в PowerShell — свойства, конструкторы, методы, статика ↗
2. enum и Flags — перечисления для severity и видов проверок ↗
3. Наследование, интерфейсы, переопределение методов ↗
4. Классы против PSCustomObject — критерии выбора и ограничения ↗
5. Валидация и скрытые члены — hidden, Validate, только для чтения ↗
6. Generic-коллекции .NET — List, Dictionary, HashSet, Concurrent ↗
7. Приёмы объектной модели — ScriptMethod, PSTypeName, TypeData ↗
8. Практика — доменные классы Vigil ↗

Данные — JSON, CSV, XML, файлы, REST, конфигурация, секреты

8 уроков
1. JSON в PowerShell 7 — ConvertTo-Json, ConvertFrom-Json, Depth ↗
2. CSV — Import-Csv, Export-Csv, кодировки, разделители, типы ↗
3. XML — [xml], Select-Xml, XPath, System.Xml.Linq ↗
4. Invoke-RestMethod и Invoke-WebRequest — заголовки, auth, ошибки ↗
5. Файлы и пути — Join-Path, LiteralPath, кодировки, потоки ↗
6. Конфигурация — psd1, Import-PowerShellDataFile, слои окружения ↗
7. Секреты — SecretManagement, SecureString, PSCredential, CI ↗
8. Практика — конфигурация, история и уведомления Vigil ↗

Параллелизм — runspaces, jobs, -Parallel, .NET Task

8 уроков
1. Модель исполнения PowerShell — runspace, поток, сессия ↗
2. ForEach-Object -Parallel — ThrottleLimit, using, AsJob, Timeout ↗
3. Jobs — Start-Job, Start-ThreadJob, Receive-Job, Wait-Job ↗
4. Runspace pool своими руками — RunspacePool, BeginInvoke ↗
5. .NET Task и асинхронные API — ожидание, HttpClient, GetAwaiter ↗
6. Общие данные и синхронизация — ConcurrentDictionary, ref, локи ↗
7. Диагностика параллельного кода — тайминги, Verbose, прерывание ↗
8. Практика — параллельный запуск проверок Vigil ↗

Тестирование и качество кода

8 уроков
1. Pester 5 — Describe, It, Should, запуск и конфигурация ↗
2. Mock и изоляция — ParameterFilter, Should -Invoke, InModuleScope ↗
3. Тесты параметров, ошибок и конвейера — ForEach, Should -Throw ↗
4. Интеграционные тесты — TestDrive, локальная HTTP-заглушка ↗
5. PSScriptAnalyzer — правила, подавление, кастомные правила ↗
6. Форматирование кода — Invoke-Formatter, editorconfig, VS Code ↗
7. Покрытие и отчёты — CodeCoverage, JaCoCo, NUnit XML для CI ↗
8. Практика — тестовое покрытие Vigil ↗

Взаимодействие с ОС, процессами, .NET и расписанием

8 уроков
1. Нативные команды — аргументы, кавычки, stderr, LASTEXITCODE ↗
2. Start-Process, stdin и stdout, коды возврата, Process API ↗
3. Кроссплатформенный код — пути, регистр, переносы, IsWindows ↗
4. Прямой вызов .NET — статика, конструкторы, Add-Type, inline C# ↗
5. Платформенные API — службы, CIM, реестр; systemd, proc ↗
6. Логирование — Start-Transcript, JSON-логи, потоки и уровни ↗
7. Запуск по расписанию — Task Scheduler, cron, systemd, NoProfile ↗
8. Практика — Vigil как задача по расписанию ↗

Производительность, remoting, безопасность, CI и релиз

8 уроков
1. Производительность — измерение и типичные узкие места ↗
2. Remoting в PowerShell 7 — SSH, New-PSSession, Invoke-Command ↗
3. Безопасность — ExecutionPolicy, подпись, ConstrainedLanguage ↗
4. GitHub Actions для модуля — матрица ОС, Pester, артефакты ↗
5. Публикация — версия, CHANGELOG, Publish-PSResource, пререлизы ↗
6. Документация модуля — PlatyPS, about_Vigil, README, примеры ↗
7. Расширяемость — новая проверка в Vigil по контракту ↗
8. Практика — релиз Vigil 1.0 ↗