Содержание
Вступление
Переход на PowerShell Core требовался для обеспечения кроссплатформенности продукта, но при этом привел к снижению функциональности, стабильности и надежности. Кроме того, пользователи столкнулись с проблемами совместимости с существующими модулями Windows PowerShell.- Не поддерживаются уже привычные решения:
- Возможность параллельного выполнения команд с помощью workflows.
- Нет поддержки WMI v1 и соответственно не работают командлеты Get-WmiObject, Invoke-WmiMethod, Register-WmiEvent и т.д.
- Исчезли командлеты связанные с графическим отображением такие, как Out-GridView, Show-Command и параметр -ShowWindow
- Не работают модули ActiveDirectory и DnsClient.
7.0
В начале 2020 г. компания Microsoft выпустила PowerShell 7.0. В этом программном обеспечении удалось решить большую часть проблем 6-ой версии. 7-ая версия основана на .NET Core 3.x, где поддерживается множество API .NET Framework, обеспечивая обратную совместимость с более 90% существующих модулей Windows PowerShell. Теперь поддерживаются модули ActiveDirectory, DnsClient, DnsServer, BitLocker, BranchCache, Defender, Hyper-V и многие другие, полный список которых приводится на сайте Microsoft.Вернулись командлеты требующие графическую функциональность, такие как Out-GridView и Show-Command. Повысилась стабильность и производительность.
В PowerShell 7.0 появились новые функции, в том числе:
- параллелизация конвейера с помощью ForEach-Object -Parallel;
- новые операторы:
- операторы сцепления конвейеров || и &&;
- условные операторы со значением NULL ?? и ??=;
- упрощенное динамическое представление ошибок и командлет Get-Error для более легкого анализа ошибок;
- автоматические уведомления о новых версиях;
- возможность вызывать ресурсы DSC непосредственно из PowerShell 7.
7.1
Осенью 2020 г. вышла общедоступная версия PowerShell 7.1, основанная на .NET 5.0.В этой версии появился ряд новых функций и обновлений:
- PSReadLine 2.1.0 с прогнозной технологией IntelliSense
- Версия PowerShell 7.1 опубликована в Microsoft Store.
- Пакеты установщика обновлены для новых версий ОС с поддержкой ARM64.
- 2 экспериментальные функции PSNullConditionalOperators и PSUnixFileStat стали основными.
- Добавлены 4 экспериментальные функции Microsoft.PowerShell.Utility.PSManageBreakpointsInRunspace, PSNativePSPathResolution, PSCultureInvariantReplaceOperator и PSSubsystemPluginModel.
7.2
PowerShell 7.2 — это следующий выпуск Long Term Servicing (LTS) на основе .NET 6.0.Новые возможности, обновления и критические изменения:
- Добавлены новые универсальные пакеты установщика для большинства поддерживаемых дистрибутивов Linux.
- Включена поддержка Центра обновления Майкрософт в Windows.
- Добавлены две новые экспериментальные возможности.
- Включена поддержка цвета в ANSI для FileInfo.
- Улучшены варианты заполнения нажатием клавиши TAB.
- Семь экспериментальных функций стали основными, одна удалена.
- Платформа DSC отделена от PowerShell 7, чтобы обеспечить возможность внесения будущих улучшений.
- Несколько критических изменений для повышения удобства использования.
7.3
В начале 2023 г. появилась версия PowerShell 7.3, основанная на .NET 7.0.Некоторые критические изменения в новой версии:
- PowerShell 7.3 не работает в Windows 7.
- PowerShell Direct для Hyper-V поддерживается только в Windows 10, версия 1809 и более поздних версиях.
- Test-Connection не работает из-за намеренного критического изменения в .NET 7
- Перемещение определения данных типа System.Security.AccessControl.ObjectSecurity в модуль Microsoft.PowerShell.Security.
- Дополнительные улучшения заполнения нажатием клавиши TAB.
- Улучшена обработка ошибок.
- Улучшены сеансы и удаленное взаимодействие.
- Обновлены ряд командлетов.
- Добавлены новые экспериментальные функции.
Курсы к статье
Будьте в курсе всех событий
Подпишись на рассылку актуальных новостей
и читай нас в соц. сетях