PowerShell против PowerShell Core: что вам нужно знать

Попробуйте наш инструмент устранения неполадок

Microsoft объявленный общедоступная версия PowerShell Core 6.0 10 января 2018 г.

PowerShell Core - это новая версия PowerShell, оболочки командной строки и языка сценариев, которая поставляется с Microsoft Windows.

Выпуск PowerShell Core увеличивает количество выпусков PowerShell до двух. Существует PowerShell десятилетней давности, интегрированный во все последние версии операционной системы Microsoft Windows и новое ядро ​​PowerShell.

Microsoft рассматривает PowerShell Core как эволюцию PowerShell. Первое доступно как кроссплатформенное приложение, второе - только для Windows.

powershell core 6.0

Кросс-платформенная природа PowerShell Core означает, что написанные вами сценарии будут выполняться в любой поддерживаемой операционной системе. Вы можете писать сценарии PowerShell Core в Windows и использовать их на поддерживаемых устройствах Mac OS X или Linux. Существуют даже экспериментальные (неподдерживаемые) версии для устройств ARM.

Microsoft активно работает над PowerShell Core. PowerShell, с другой стороны, находится в состоянии, которое лучше всего можно сравнить с расширенной поддержкой версий Windows. Microsoft не планирует добавлять функции в PowerShell, но выпустит исправления критических ошибок и обновления безопасности.

Однако в настоящее время нет планов по внедрению новых функций в Windows PowerShell. Это означает, что риск регресса для Windows PowerShell будет очень низким, поэтому вы можете рассчитывать на нее как на стабильную платформу для существующих рабочих нагрузок.

PowerShell Core устанавливается параллельно в Windows. Вкратце: PowerShell Core никаким образом не влияет на Windows PowerShell на устройствах Windows.

powershell 6.0.0

PowerShell Core 6.0 не такой мощный, как PowerShell 5.1. Одна из основных причин этого заключается в том, что PowerShell имеет доступ к .NET Framework и .NET Standard, а PowerShell Core - к менее функциональным .NET Core и .NET Standard.

Некоторые технологии, доступные для Windows PowerShell, не поддерживаются .NET Core. Microsoft отмечает, что некоторые технологии могут вернуться в будущих выпусках, но не для всех.

Компания конкретно упоминает рабочие процессы PowerShell, оснастки PowerShell, командлеты WMlv1 и выполнение ресурсов конфигурации желаемого состояния. Критические изменения для PowerShell 6.0 документ предлагает более подробную информацию.

Различия между PowerShell и PowerShell Core

PowerShellЯдро PowerShell
ВерсииОт 1.0 до 5.16,0
платформыТолько Windows (клиент и сервер)Windows, Mac OS, Linux
зависимость.NET Framework.Net Core
использованиеПолагается на среду выполнения .Net FrameworkПолагается на среду выполнения .Net Core
Запущен какpowershell.exepwsh.exe (Windows), pwsh (Mac и Linux)
$ PSVersionTable.PSEditionУстановить на рабочий столУстановить в Core
Обновить политикутолько критические исправления ошибоквсе обновления (функции, ошибки)

Загрузки PowerShell Core