Все способы:
- Определение версии «PowerShell»
- Способ 1: Windows Store
- Способ 2: Установка из MSI-файла
- Способ 3: Обновление из консоли
- Способ 4: Менеджер пакетов «Winget»
- Особенности установки версий «PowerShell»
- Вопросы и ответы: 0
Определение версии «PowerShell»
Перед тем как приступать к обновлению консоли «PowerShell», желательно узнать, какая версия используется на компьютере сейчас. Сделать это можно средствами самой же консоли.
- Откройте «PowerShell» из контекстного меню кнопки «Пуск». Запускать инструмент с правами администратора в данном случае можно, но не обязательно.
- Выполните в консоли команду
host
и посмотрите значение параметра «Version».Также для определения текущей версии можно использовать команду
$PSVersionTable.PSVersion.major
. Номер версии будет указан в столбце «Major».
Следует знать, что в настоящее время существует две ветки «PowerShell», представленные двумя разными отдельными платформами. Если в системе установлена версия 5.1 — это старая ветка, которая более не развивается. Версии от 6.0 и выше относятся к новой, активно развивающейся ветке. Обновить «PowerShell» v5.1 в смысле замены старой версии на новую нельзя, можно лишь установить новую версию консоли, при это обе версии смогут работать параллельно.
Способ 1: Windows Store
Если на компьютере имеется учетная запись Microsoft, выполнить обновления консоли проще всего будет через Магазин Windows. Этот способ хорош тем, что установленное приложение в дальнейшем станет обновляться автоматически, будучи контролируемым «Microsoft Store».
Скачать «PowerShell» из Магазина Windows
- Запустите «Microsoft Store» и найдите приложение «PowerShell» через поиск. Также попасть на нужную страницу Магазина можно из любого браузера, перейдя по ссылке выше.
- Нажмите кнопку «Получить», чтобы установить актуальную версию программы.
Минусом данного решения может стать запуск установленной консоли во встроенной в Windows «Песочнице».
Способ 2: Установка из MSI-файла
Это более универсальный способ обновления, он подходит для всех пользователей, в том числе тех, у которых нет учетной записи Microsoft или приложения «Windows Store».
Скачать «PowerShell» с официального сайта
- Скачайте установочный файл консоли с официальной страницы проекта. Для Windows 10 доступны 32-битная (win-x86.msi) и 64-битная (x64.msi) версии программы канала «Stable» или «LTS». Запустите установочный файл двойным кликом.
- Если необходимо, включите в окне мастера-установщика дополнительные опции. Нажмите «Next».
- В следующем окне мастера все можно оставить по умолчанию. Это обеспечит последующее автоматическое обновление «PowerShell Core» средствами «Центра обновления Windows». Нажмите «Next».
- Нажмите «Install», чтобы запустить процедуру установки приложения.
Способ 3: Обновление из консоли
Обновить «PowerShell» можно также и непосредственно из самой консоли. Этот способ дублирует установку из MSI-файла, разница лишь в том, что установщик загружается из запускается из интерфейса «PowerShell».
- Откройте «PowerShell» от имени администратора любым известным способом.
- Выполните команду скачивания и установки последней стабильной версии
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
.
По завершении установки должно открыться окно установленного приложения «PowerShell Core».
Способ 4: Менеджер пакетов «Winget»
Для установки или обновления «PowerShell» также можно использовать встроенный менеджер пакетов «Winget». Этот инструмент имеется в актуальных сборках Windows 10, в старых версиях системы менеджер отсутствует, но его можно установить отдельно, скачав UWP-установщик с сайта разработчика.
Скачать «Winget» с официального сайта
Подробнее: Установка приложений формата Appxbundle в Windows 10
- Установите «Winget», если не установлен.
- Запустите от имени администратора текущую версию «PowerShell» из контекстного меню кнопки «Пуск» или классическую «Командную строку» из поиска Windows.
- Выполните команду
winget install --id Microsoft.Powershell --source winget
. Эта команда обновляет консоль до последней версии.Если нужно обновиться до конкретной версии, выполните команду
winget install --id=Microsoft.PowerShell -v "ver" -e
, где ver – номер нужной версии.
Особенности установки версий «PowerShell»
Старая и новые версии «PowerShell» устанавливаются в разные каталоги, также они имеют разные быстрые команды вызова с использованием диалогового окошка «Выполнить». Файлы «PowerShell» версии 5.1 располагаются в каталоге C:\Windows\System32\WindowsPowerShell\v1.0
, при этом для вызова консоли из окошка «Выполнить» используется одноименная команда powershell
. Файлы консоли «PowerShell Core» версии 6.0 и выше располагаются в каталоге C:\ProgramFiles\PowerShell\Ver
, где Ver – номер версии. При обновлении «PowerShell Core» до новой версии старая папка «Ver» удаляется. Также для запуска «PowerShell Core» из диалогового окошка «Выполнить» используется команда pwsh
, а не powershell
.
Наша группа в TelegramПолезные советы и помощь
В этой статье мы рассмотрим, как обновить версию Windows PowerShell до актуальной 5.1 и установить (обновить) PowerShell Core 7.3. В предыдущей статье мы рассказывали, что на данный момент есть две ветки PowerShell:
- старая версия Windows PowerShell (максимальная версия 5.1, которая более не развивается);
- новая платформа PowerShell Core (сейчас доступна версия 7.3).
Несмотря на то, что нумерация версий PowerShell продолжается с 5.1 (6.0, 6.1, 7.0 и т.д.), это две разные платформы. Соответственно мы отдельно рассмотрим как обновить Windows PowerShell и PowerShell Core.
PowerShell Core 7.x максимально совместима с Windows PowerShell. Это означает, что вы можете запускать свои старые скрипты и командлеты в PowerShell Core.
Содержание:
- Обновление Windows PowerShell до 5.1
- Установка/обновление PowerShell Core 7.x
- Установка/обновление PowerShell Core на удаленных комьютерах
- Обновление PowerShell через Windows Update или WSUS
Обновление Windows PowerShell до 5.1
Во всех версиях, начиная с Windows 10 и Windows Server 2016, Windows PowerShell 5.1 уже установлен по-умолчанию.
В предыдущих версиях (Windows 7/8.1 и Windows 2008 R2/2012) обновление до PowerShell 5.1 нужно выполнять вручную. Например, в Windows Server 2012 R2 (Windows 8.1) установлен PowerShell 4.0.
Попробуем обновить версию Windows PowerShell в Windows Server 2012 R2 до версии 5.1.
Сначала проверьте текущую версию PowerShell (на скриншоте видно, что это PowerShell 4.0):
$PSVersionTable.PSVersion
Чтобы обновить вашу версию PowerShell до 5.1, нужно установить пакет Windows Management Framework (WMF) 5.1, который в свою очередь требует наличия .NET Framework 4.5.2 (или более поздней версии). Убедитесь, что у вас установлена версий .NET 4.5.2 или выше командой:
(Get-ItemProperty ‘HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full’ -Name Release).Release
В моем случае код 378675 говорит о том, что установлена версия .NET 4.5.1. Поэтому мне нужно скачать и установить более новую .NET Framework 4.8 (ссылка на офлайн установщик https://go.microsoft.com/fwlink/?linkid=2088631 —
ndp48-x86-x64-allos-enu.exe
).
Установите .NET 4.8 (потребуется перезагрузка).
Если установить WMF 5.1, но не установить .NET 4.5.2 (или более новый), часть функций PowerShell не будет работать.
Скачайте WMF 5.1 для Windows Server 2012 R2 —
Win8.1AndW2K12R2-KB3191564-x64.msu
(https://go.microsoft.com/fwlink/?linkid=839516).
Установите MSU файл Windows Management Framework 5.1.
После перезагрузки сервера, запустите консоль powershell.exe и убедитесь, что версия была обновлена до PowerShell 5.1.
Если у вас остались снятые с поддержки Windows Server 2008 R2 и Windows 7, вы можете обновить на них версию PowerShell с 2.0 до 5.1 аналогичным способом. Сначала устанавливается .Net Framework 4.5.2 (или выше) и затем WMF 5.1 (ссылки загрузки будут другими, чем для Windows Server 2012 R2).
Установка/обновление PowerShell Core 7.x
PowerShell Core является кроссплатформенной и находится в стадии активной разработки (в отличии от Windows PoweShell 5.1). По сути, PowerShell Core это новая платформа, которая устанавливается в операционной системе вместе с классическим Windows PowerShell. Т.е. нельзя обновить PowerShell 5.1 до PowerShell Core 7.1. PowerShell 7 устанавливается на компьютере отдельно от Windows PowerShell 5.1 (side by side).
На данный момент доступны версии PowerShell Core 6.x и 7.x. Рекомендуется всегда устанавливать последнюю версиях PowerShell (сейчас это 7.3), если вам не требуется особая совместимость с legacy скриптами.
Вы можете обновить (установить) версию PowerShell Core в Windows 10 и 11 несколькими способами:
- С помощью MSI установщика PowerShell Core, который можно скачать на GitHub
- С помощью менеджера пакетов WinGet
- С помощью магазина приложений Microsoft
Далее мы рассмотрим все эти способы на примере обновления PowerShell Core до 7.3 в Windows 10 22H2
Обновить PowerShell Core с помощью MSI установщика
Если вы хотите установить PowerShell Core с помощью MSI пакета, перейдите на старицу проекта https://github.com/PowerShell/PowerShell и скачайте установочный пакет для вашей версии ОС. На момент написания статьи последняя версия v7.3.3 Release of PowerShell от 24 февраля 2023 (например, PowerShell-7.3.3-win-x64.msi или PowerShell-7.3.3-win-x86.msi). Для продуктивной среды используйте Stable или LTS релизы.
Скачайте msi файл и установите его.
Доступны следующие опции установки:
- Add PowerShell to Path Environment Variable
- Register Windows Event Logging Manifest (для событий PowerShell будет создан отдельный журнал Event Viewer
%SystemRoot%\System32\Winevt\Logs\PowerShellCore%4Operational.evtx
) - Enable PowerShell Remoting (включает и настраивает WinRM для PowerShell Remoting)
- Add ‘Open here’ context menu to Explorer
- Add ‘Run with PowerShell 7’ context menu for PowerShell files
Далее вы можете включить автоматическое обновление PowerShell Core через WIndows Update/WSUS (рассмотрено ниже).
Для установки PowerShell Core из MSI пакета средствами SCCM/MDT/скриптами в тихом режиме можно использовать команду установки со следующими параметрами:
- ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL
- ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL
- ENABLE_PSREMOTING
- REGISTER_MANIFEST
- ADD_PATH
- DISABLE_TELEMETRY
- USE_MU – использовать Microsoft Update для получения обновлений PSCore
- ENABLE_MU – разрешить обновление PowerShell Core через Windows Update
Например, команда установки может выглядеть так:
msiexec.exe /package PowerShell-7.3.3-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 ADD_PATH=1 ENABLE_MU=1 ADD_PATH=1
Вы можете обновить PowerShell непосредственно из консоли. Чтобы установить или обновиться до последней версии PoSh Core, выполните команду:
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
Данная команда загружает установочный MSI файл PowerShell 7.3 с GitHub и запускает установку через MSI Installer.
После окончания установки открывается окно PowerShell Core (pwsh.exe), проверьте версию PowerShell и убедитесь, что теперь это PoSh 7.3.3.
Используем менеджер пакетов WinGet для установки/обновления PowerShell Core
Если у вас установлен пакетный менеджер WinGet, вы можете установить или обновить версию PowerShell до актуальной командой:
winget install --id Microsoft.Powershell --source winget
Либо можно установить конкретную версию PowerShell Core:
winget install --id=Microsoft.PowerShell -v "7.1.2" -e
При использовании менеджера пакетов Chocolatey, используйте команды (для 5.1):
choco install powershell -y
choco upgrade powershell -y
Для обновления PowerShell 7.x:
choco upgrade pwsh -y
Обратите внимание на каталоги различных версий PowerShell:
- Windows PowerShell 5.1:
$env:WINDIR\System32\WindowsPowerShell\v1.0
- PowerShell Core 6.x:
$env:ProgramFiles\PowerShell\6
- PowerShell 7.x:
$env:ProgramFiles\PowerShell\7
Если на компьютере был установлен PowerShell 6.x, то при установке PowerShell 7.3 каталог
$env:ProgramFiles\PowerShell\6
автоматически удаляется.
Обратите внимание, что имя исполняемого файла среды PowerShell изменился. Теперь это
c:\Program Files\PowerShell\7\pwsh.exe
. У него собственная иконка в меню Start.
- Для запуска Windows PowerShell, основанного на .NET Framework используется команда
powershell.exe
- Для запуска PowerShell Core, основанного на .NET Core, нужно использовать команду
pwsh.exe
Т.е. теперь на этом компьютере есть две версии: Windows PowerShell 5.1 и PowerShell Core 7.3.
Чтобы узнать версию PowerShell можно проверять версию файла pwsh.exe:
(Get-Command 'C:\Program Files\PowerShell\7\pwsh.exe').Version
Так можно проверить версию файла на удаленном компьютере:
Invoke-Command -Computername computer1 -Scriptblock {(Get-Command 'C:\Program Files\PowerShell\7\pwsh.exe').Version}
Чтобы запустить предыдущую версию PowerShell (например 4), используйте команду:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Version 4
Установка PowerShell Core через Microsoft Store
В Windows 10 и 11вы можете установить или обновить PowerShell через магазин приложений Microsoft Store. Приложение PowerShell можно найти в магазине вручную, или воспользуйтесь этой ссылкой.
Также вы можете установить магазинную версию PowerShell через WinGet:
winget search powershell --source msstore
winget install --id 9MZ1SNWT0N5D
Преимущество установки PowerShell Core через Microsoft Store в том, что магазин прилжений будет автоматически контролировать установленную версию PowerShell и автоматически устанавливать обновления по мере их появления.
Вы можете проверить, установлена ли у вас Store версия PowerShell Coreс помощью команды:
Get-AppPackage Microsoft.PowerShell
В этом примере пакет Microsoft.PowerShell_7.3.3.0_x64__8wekyb3d8bbwe установлен.
Но есть и недостатки, связанные с тем, что такой PowerShell будет запускаться в песочнице.
Установка/обновление PowerShell Core на удаленных комьютерах
Рассмотрим два сценария установки или обновления версии PowerShell Core на множестве компьютерах.
Обновление PowerShell Core с помощью GPO
В домене Active Directory вы можете централизованно установить и обновить PowerShell Core с помощью групповой политики. Воспользуйтесь возможностями установки программ с помощью MSI пакетов в GPO.
- Скачайте установочный MSI файл PowerShell и скопируйте его в каталог SYSVOL на контроллере домена;
- Откройте консоль управления доменными GPO (
gpmc.msc
), создайте новую GPO и назначьте ее на OU с компьютерами и серверами; - Перейдите в раздел GPO Computer Configuration –> Software Settings, создайте новый пакет и укажите для него путь к установочному MSI файлу PowerShell в SYSVOL;
Для более тонкого нацеливания политики на клиентов можно использовать WMI фильтры GPO.
- Для обновления групповых политик установки ПО нужно перезагрузить компьютеры. Во время загрузки на всех компьютерах будет установлена новая версия PowerShell.
Обновление PowerShell на удаленных компьютерах из командной строки
Вы можете обновлять PowerShell на удаленных компьютерах из командной строки.
- Первый способ позволяет удаленно обновить PowerShell на компьютере с помощью MSI установщика в сетевом каталоге:
Invoke-Command -ComputerName dc01 -ScriptBlock {Start-Process msiexec.exe -ArgumentList '/package "\\srv1\share\PowerShell-7.3.3-win-x64.msi" /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1' -Wait}
- Следующий скрипт позволит выбрать все активные компьютеры с Windows 10 из домена Active Directory и запустить на каждом из них загрузку и установку PowerShell Core:
$creds = $(Get-Credential)
$computers = Get-ADComputer -Filter 'operatingsystem -like "*Windows 10*" -and enabled -eq "true"'
ForEach ($computer in $computers) {
Invoke-Command -ComputerName $computer -Credential $creds {iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI -Quiet"}
}
Будьте внимательными при использовании команд PowerShell Remoting при подключении к удаленным компьютерам (Enter-PSSession, Invoke-Command). Если вам нужно подключиться к точке управления PowerShell 7 нужно использовать команду:
Enter-PSSession -ComputerName dc01 -ConfigurationName "powershell.7"
Иначе вы подключитесь к точке PowerShell Remoting 5.1.
Обновление PowerShell в Linux дистрибутивах чаще проще всего выполняется через нативный менеджер пакетов.
Обновление PowerShell через Windows Update или WSUS
До версии PowerShell Core 7.2 не поддерживалось автоматическое обновление pwsh.exe. После выхода нового релиза в консоли появилось уведомление:
A new PowerShell stable release is available. Upgrade now, or check out the release page at: https://aka.ms/PowerShell-Release?tag=v7.1.3
Начиная с версии 7.2, PowerShell Core поддерживает автоматическое обновление через Windows Update ( Microsoft Update, Windows Update for Business, внутренний WSUS сервер или SCCM). Для этого при установке MSI пакета нужно включить соответствующие опции.
Проверьте, что в панели управления Settings -> Update and Security -> Windows Update -> Advanced Options теперь включена опция Receive updates for other Microsoft products when you update Windows.
Теперь, когда вы нажимаете кнопку Check for Updates или запускаете сканирование обновлений через модуль PSWindowsUpdate, вы также будете получать обновления для PowerShell Core.
В этом материале разберёмся как инсталлировать или обновить PowerShell. В десятой и одиннадцатой винде изначально установлен PowerShell серии 5.1. Редакция является окончательной и обновляться больше не будет, но взамен ей вышел PowerShell Core, который на данный момент развивается. Это не значит что если вы захотите инсталлировать серию Core, то она установится вместо старого PowerShell. На самом деле они будут работать параллельно, то есть у вас будет в наличии и тот и другой. Начинается Core с версии 6.0. На данный момент наиболее актуальная релизная версия 7.3.4, а бета — 7.4.0.3. Главное отличие двух видов PowerShell в том, что Core можно установить практически на любую платформу в противовес стандартному, который был доступен исключительно на Windows.
Прежде чем приступить к обновлению необходимо определить какой редакцией сейчас обладаете вы. С этой целью в самом PowerShell вводим строчку
$PSVersionTable.PSVersion
У меня установлена последняя версия 5.1, значит устанавливаю отдельно 7.3.4.
Есть команда, которая позволяет установить новейшую версию PS через само приложение либо cmd.
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
Прописав строки вам просто нужно подождать пока будет найден и инсталлирован новый PowerShell.
PowerShell 7.3.4 установлен, запускаем его из установленных приложений.
Проверяем версию командой «$PSVersionTable.PSVersion».
Установить PowerShell реально и другими способами, например использовать MSI-файл. Для этого нужно просто перейти на сайт https://github.com/PowerShell/PowerShell и выбрать файл, соответствующий вашей системе. Далее просто открываем скачанный установочный файл. Откроется установщик, нажимаем «Next», выбираем каталог для установки и опять щелкаем «Next». Теперь будет предложено включить дополнительные функции.
Первый пункт позволяет запускать PowerShell из других оболочек.
Второй разрешает регистрировать события.
Третий разрешает удалённый запуск команд.
Четвёртый добавляет PowerShell в контекстное меню, которое можно вызвать щёлкнув ПКМ на папке и в ней его открыть.
Пятый также добавляет в контекстное меню функцию, которая для соответствующих PowerShell файлов предлагает запустить скрипт в PowerShell Core.
В следующем окне мы можем выбрать обновлять ли PS через службу Windows Update. Опять нажимаем «Next» и «Install». По окончанию остаётся нажать «Finish».
В случае если вы при установке поставили отметки напротив первого и четвёртого пункта, то новый PowerShell можно открыть из cmd с помощью команды «pwsh». Такой же командой можно воспользоваться просто напечатав её в поиске Windows. Также можно щёлкнуть на любую директорию ПКМ и нажать PowerShell 7 — Open here.
PowerShell 5.1 является мощным инструментом, некоторые считают что даже мощнее 7.4.0.3. Однако мир не стоит на месте и те кто будут обновлять PS наверняка знают зачем это делают.
В этой статье расскажем, как обновить Windows PowerShell до актуальной версии 5.1 и установить (обновить) PowerShell Core 7.3. На данный момент существуют две ветки PowerShell:
— Старая версия Windows PowerShell (максимальная версия 5.1, которая больше не развивается).
— Новая платформа PowerShell Core (доступна версия 7.3).
Несмотря на то, что нумерация версий PowerShell продолжается с 5.1 (6.0, 6.1, 7.0 и т.д.), это две разные платформы.
Мы рассмотрим, как обновить Windows PowerShell и PowerShell Core.
PowerShell Core 7.x совместима с Windows PowerShell, что означает, что вы можете запускать старые скрипты и командлеты в PowerShell Core.
Приобрести оригинальные ключи активации Windows всегда можно у нас в каталоге от 1099 ₽
Обновление Windows PowerShell до 5.1
Во всех версиях, начиная с Windows 10 и Windows Server 2016, Windows PowerShell 5.1 уже установлен по умолчанию.
В более ранних версиях (Windows 7/8.1 и Windows Server 2008 R2/2012) обновление до PowerShell 5.1 выполняется вручную. Например, в Windows Server 2012 R2 (Windows 8.1) установлена PowerShell 4.0.
Попробуем обновить версию PowerShell в Windows Server 2012 R2 до 5.1.
1. Проверьте текущую версию PowerShell:
$PSVersionTable.PSVersion
2. Для обновления PowerShell до версии 5.1 установите Windows Management Framework (WMF) 5.1, который требует .NET Framework 4.5.2 или выше. Чтобы убедиться, что у вас установлена нужная версия .NET, выполните команду:
(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release).Release
3. Если у вас устаревшая версия .NET (например, 4.5.1), скачайте и установите NET Framework 4.8
4. После установки .NET 4.8 (потребуется перезагрузка) скачайте WMF 5.1 для Windows Server 2012 R2
5. Установите MSU файл Windows Management Framework 5.1.
6. Перезагрузите сервер, затем запустите консоль powershell.exe и убедитесь, что версия обновлена до PowerShell 5.1:
$PSVersionTable.PSVersion
Если у вас Windows Server 2008 R2 или Windows 7, вы также можете обновить PowerShell до 5.1 аналогичным способом: сначала установите .NET Framework 4.5.2 или выше, а затем установите WMF 5.1.
Установка/обновление PowerShell Core 7.x
PowerShell Core — это кроссплатформенная среда, которая активно развивается в отличие от Windows PowerShell 5.1. Она устанавливается отдельно от Windows PowerShell, поэтому обновление Windows PowerShell 5.1 до PowerShell Core невозможно.
На данный момент доступны версии PowerShell Core 6.x и 7.x. Рекомендуется использовать последнюю версию PowerShell Core (сейчас это 7.3), если вам не требуется особая совместимость с устаревшими скриптами.
Существует несколько способов обновления или установки PowerShell Core в Windows 10 и 11:
— С помощью MSI установщика PowerShell Core (скачивается на GitHub).
— С помощью менеджера пакетов WinGet.
— Через Microsoft Store.
Обновление PowerShell Core с помощью MSI установщика
1. Перейдите на страницу проекта PowerShell на GitHub и скачайте последнюю версию установочного пакета MSI.
2. Установите MSI файл. Во время установки доступны следующие опции:
— Add PowerShell to Path Environment Variable — добавляет PowerShell в переменные окружения.
— Register Windows Event Logging Manifest — регистрирует журнал событий для PowerShell.
— Enable PowerShell Remoting — включает удалённое управление через WinRM.
— Add ‘Open here’ context menu to Explorer — добавляет пункт в контекстное меню Проводника.
— Add ‘Run with PowerShell 7’ context menu for PowerShell files — добавляет пункт для запуска скриптов через PowerShell 7.
3. Для автоматического обновления PowerShell Core через Windows Update или WSUS активируйте соответствующие опции.
Обновление PowerShell Core через WinGet
1. Если у вас установлен WinGet, вы можете установить или обновить PowerShell до актуальной версии командой:
winget install --id Microsoft.Powershell --source winget
2. Если нужно установить конкретную версию PowerShell Core, используйте:
winget install --id=Microsoft.PowerShell -v "7.1.2" -e
Для установки PowerShell Core из MSI пакета средствами SCCM/MDT/скриптами в тихом режиме можно использовать команду установки со следующими параметрами:
ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL
ADD_FILE_CONTEXT_MENU_RUNPOWERSHELL
ENABLE_PSREMOTING
REGISTER_MANIFEST
ADD_PATH
DISABLE_TELEMETRY
USE_MU – использовать Microsoft Update для получения обновлений PSCore
ENABLE_MU – разрешить обновление PowerShell Core через Windows UpdateНапример, команда установки может выглядеть так:
msiexec.exe /package PowerShell-7.3.3-win-x64.msi /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1 ADD_PATH=1 ENABLE_MU=1 ADD_PATH=1
Вы можете обновить PowerShell прямо из консоли. Для этого выполните следующую команду, которая загрузит и установит последнюю версию PowerShell Core с использованием MSI установщика:
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
Эта команда загружает установочный MSI файл PowerShell 7.3 с GitHub и автоматически запускает установку через MSI Installer.
После завершения установки откроется окно PowerShell Core (pwsh.exe). Проверьте текущую версию PowerShell, чтобы убедиться, что теперь установлена последняя версия 7.3.3:
$PSVersionTable.PSVersion
Использование WinGet для установки или обновления PowerShell Core
Если у вас установлен пакетный менеджер WinGet, вы можете установить или обновить PowerShell до актуальной версии с помощью следующей команды:
winget install --id Microsoft.Powershell --source winget
Если нужно установить конкретную версию PowerShell Core, выполните команду:
winget install --id=Microsoft.PowerShell -v "7.1.2" -e
Использование Chocolatey для установки или обновления PowerShell
Если вы используете менеджер пакетов Chocolatey, для установки или обновления PowerShell 5.1 используйте следующие команды:
choco install powershell -y
choco upgrade powershell -y
Для обновления PowerShell 7.x:
choco upgrade pwsh -y
Важные каталоги PowerShell
Обратите внимание на местоположение файлов различных версий PowerShell:
— Windows PowerShell 5.1: $env:WINDIR\System32\WindowsPowerShell\v1.0
— PowerShell Core 6.x: $env:ProgramFiles\PowerShell\6
— PowerShell 7.x: $env:ProgramFiles\PowerShell\7
При установке PowerShell 7.3, если на компьютере уже была установлена версия 6.x, каталог $env:ProgramFiles\PowerShell\6 автоматически удаляется.
Также обратите внимание, что исполняемый файл PowerShell Core теперь называется pwsh.exe и находится в каталоге c:\Program Files\PowerShell\7\pwsh.exe. У него есть собственная иконка в меню Пуск.
— Для запуска Windows PowerShell (на базе .NET Framework) используйте команду:
powershell.exe
— Для запуска PowerShell Core (на базе .NET Core) используйте команду:
pwsh.exe
Использование двух версий PowerShell
Теперь на вашем компьютере могут быть установлены обе версии PowerShell: Windows PowerShell 5.1 и PowerShell Core 7.3
Чтобы проверить версию PowerShell Core, вы можете выполнить следующую команду:
(Get-Command 'C:\Program Files\PowerShell\7\pwsh.exe').Version
Также можно проверить версию PowerShell на удалённом компьютере:
Invoke-Command -ComputerName computer1 -Scriptblock {(Get-Command 'C:\Program Files\PowerShell\7\pwsh.exe').Version}
Запуск предыдущих версий PowerShell
Если вам нужно запустить предыдущую версию PowerShell, например PowerShell 4, используйте следующую команду:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Version 4
Обновление PowerShell Core через Microsoft Store
В Windows 10 и 11 вы можете установить PowerShell через Microsoft Store. Приложение PowerShell можно найти вручную, или установить через WinGet:
winget search powershell --source msstore
winget install --id 9MZ1SNWT0N5D
Преимущество этого способа заключается в том, что Microsoft Store будет автоматически следить за обновлениями и устанавливать их по мере появления.
Вы можете проверить, установлена ли у вас Store версия PowerShell Coreс помощью команды:
Get-AppPackage Microsoft.PowerShell
В этом примере пакет Microsoft.PowerShell_7.3.3.0_x64__8wekyb3d8bbwe установлен.
Но есть и недостатки, связанные с тем, что такой PowerShell будет запускаться в песочнице.
Установка/обновление PowerShell Core на удалённых компьютерах
Обновление PowerShell Core с помощью GPO
В домене Active Directory вы можете централизованно установить или обновить PowerShell Core с помощью групповой политики (GPO):
1. Скачайте MSI файл PowerShell и скопируйте его в каталог SYSVOL на контроллере домена.
2. Откройте консоль управления GPO (gpmc.msc), создайте новую политику и назначьте её на OU с компьютерами.
3. В разделе Computer Configuration -> Software Settings создайте новый пакет и укажите путь к MSI файлу PowerShell в каталоге SYSVOL.
4. Для обновления групповых политик установки ПО нужно перезагрузить компьютеры. Во время загрузки на всех компьютерах будет установлена новая версия PowerShell.
Обновление PowerShell на удалённых компьютерах из командной строки
Вы можете обновлять PowerShell на удалённых компьютерах через консоль. Пример команды для установки PowerShell с помощью MSI установщика:
Invoke-Command -ComputerName dc01 -ScriptBlock {Start-Process msiexec.exe -ArgumentList '/package "\\srv1\share\PowerShell-7.3.3-win-x64.msi" /quiet ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1 ENABLE_PSREMOTING=1 REGISTER_MANIFEST=1' -Wait}
Следующий скрипт позволит выбрать все активные компьютеры с Windows 10 из домена Active Directory и запустить на каждом из них загрузку и установку PowerShell Core:
$creds = $(Get-Credential)
$computers = Get-ADComputer -Filter 'operatingsystem -like "*Windows 10*" -and enabled -eq "true"'
ForEach ($computer in $computers) {
Invoke-Command -ComputerName $computer -Credential $creds {iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI -Quiet"}
}
Для использование командлета GetADComputer на компьютере должен быть установлен модуль AD PowerShell.
Будьте внимательными при использовании команд PowerShell Remoting при подключении к удаленным компьютерам (Enter-PSSession, Invoke-Command). Если вам нужно подключиться к точке управления PowerShell 7 нужно использовать команду:
Enter-PSSession -ComputerName dc01 -ConfigurationName "powershell.7"
Иначе вы подключитесь к точке PowerShell Remoting 5.1.
Обновление PowerShell через Windows Update или WSUS
Начиная с версии 7.2, PowerShell Core поддерживает автоматическое обновление через Windows Update. Для этого включите опции автоматического обновления при установке MSI пакета.
Первая опция разрешает автоматическое обновление PowerShell через любой канал (включает параметр UseMU =1 в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShellCore)
Второй чекбокс – разрешает получать обновления для всего ПО Microsoft, не только для Windows. Если опция отключена, вы не будете получать обновления PowerShell с Microsoft Update, но можете получать их с вашего WSUS/SCCM (параметр реестра registeredwithAU=1 в HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Services\7971F918-A847-4430-9279-4A52D1EFE18D)
Для проверки наличия обновлений откройте Настройки > Обновление и безопасность > Windows Update > Дополнительные параметры и убедитесь, что активирована опция Получать обновления для других продуктов Microsoft.
Теперь при проверке обновлений через Windows Update или через модуль PSWindowsUpdate, вы будете получать обновления для PowerShell Core.
Таким образом, вы можете выбрать удобный для вас способ обновления Windows PowerShell и PowerShell Core, будь то использование MSI пакета, WinGet, Microsoft Store, или групповых политик.
Last Updated :
07 Apr, 2025
Upgrading PowerShell on Windows ensures access to new commands, enhanced security features, and better compatibility with modern scripts and tools. Whether you’re using it for system administration, automation, or development, staying up to date can make a significant difference.
In this guide, we’ll show you how to upgrade PowerShell on your Windows system step by step, ensuring you have the latest version to maximize its potential.
What is PowerShell?
PowerShell is a task automation and configuration management framework. It combines a powerful a command-line shell and a scripting language used in system administration and automation for managing the requirements of Windows environments. It integrates both the features of scripting languages and command line interfaces, enabling automation of tasks, management of system resource handling, and troubleshooting for Windows settings.
Benefits in PowerShell
- Automation: PowerShell is a very effective software program employed in the automation of repetitive and bulk administrative tasks as well as systems management.
- Cross-platform: PowerShell 7 is intended to operate on Windows, macOS, and Linux, which is not included in the modern operating systems.
- Extensibility: PowerShell can be extended by modules and scripts.
Why Upgrade PowerShell?
The most important benefits of upgrading to the latest version of PowerShell.
- Improved Features: PowerShell 7 has many new features-such as pipeline parallelization and native commands to manage Docker containers. It also has better performance.
- Better Security: Newer versions provide improved security features and enhancements for protecting your system.
- Compatibility: PowerShell 7 covers modern technologies, such as cloud platforms and containers.
- Improved Performance: New versions often come with performance enhancements that can make your scripts run faster and more efficiently.
Methods to Upgrade PowerShell
Here are the most common ways to upgrade to PowerShell 7 or later.
1. Install and Upgrade from Microsoft Store
Installing PowerShell via the Microsoft Store is an easy way to upgrade or install PowerShell 7.
- Open the Microsoft Store from the Start menu.
- Search for «PowerShell» in the store.
- Click Get to install the latest version of PowerShell 7.
The Microsoft Store will automatically handle updates, ensuring that you’re always running the latest version.
2. Using WinGet to Install PowerShell 7
WinGet is a package manager for Windows that allows you to install and upgrade software easily. To install PowerShell 7 using WinGet, follow these steps:
- Open Command Prompt or PowerShell as Administrator.
- Run the following command.
Command: winget install --id Microsoft.Powershell --source winget
This will download and install the latest version of PowerShell 7.
3. Using the MSI (Microsoft Installer)
- Go to the PowerShell GitHub releases page.
- Download the MSI package for your system (x64 or x86).
- Run the installer and follow the on-screen instructions to complete the installation.
Using PowerShell 7
Once you’ve installed PowerShell 7, there are some key features and enhancements you can explore:
- Improved Performance: PowerShell 7 runs faster, especially with large scripts.
- Enhanced Syntax: New syntactic sugar like
&&
and||
for conditional commands. - Cross-platform Compatibility: Works on Windows, macOS, and Linux.
How to Get Started with PowerShell 7
- Open PowerShell 7 from the Start menu.
- Run basic commands like
Get-Help
,Get-Command
, andGet-Process
to start familiarizing yourself with the environment. - Explore PowerShell’s cross platform capabilities and run the same script across different operating systems.
Update PowerShell 7 Command
To ensure you’re always using the latest version of PowerShell 7, you can update it using the following command.
Command: iex "& { $(irm https://aka.ms/install-powershell.ps1 -UseBasicP) }"
- This will update PowerShell to the latest stable version.
You can check for updates using the Update Module
cmdlet if you have PowerShellGet installed.
Using PowerShell 7 Side-by-Side with Windows PowerShell 5.1
PowerShell 7 can easily run alongside Windows PowerShell 5.1. This would make it easier for you in cases where you have older scripts which have not yet been updated to run in PowerShell 7.
- Reason for Running Both: Some old scripts and tools were designed for Windows PowerShell 5.1 and will not run in PowerShell 7 due to breaking changes.
- Instructions on How to Set Up: Run the installer for PowerShell 7 and do not uninstall Windows PowerShell. When you later need to use Windows PowerShell 5.1, simply search for «Windows PowerShell» in your Start menu. For PowerShell 7, type «PowerShell«.
Writes everything without restrictions but preserves access to PowerShell 7’s freshest features when running legacy scripts that depend on PowerShell 5.1.
How to Verify Your PowerShell Version
To confirm that you’ve successfully upgraded to the latest version of PowerShell, use the following command in PowerShell.
Command: $PSVersionTable.PSVersion
This will display the version of PowerShell you’re currently using. Make sure it shows the version you just installed.
Which PowerShell Version is Best for You
- Windows PowerShell 5.1: Would be suitable for running legacy scripts or managing older systems.
- PowerShell 7: Perfectly designed for modern systems, with its performance improvements, and for cross-platform compatibility.
PowerShell 7 is a great option if you’re working in more recent systems or you need more power and flexibility. On the other hand, if you have to supervise legacy environments or run old scripts, Windows PowerShell 5.1 might be needed.
Conclusion
When you upgrade to PowerShell, you are using the latest available features, improved performance, and even better security benefits. PowerShell 7 is the recommended version for most users due to its cross-platform capabilities and enhanced functionalities. Whether you prefer using the MSI installer, WinGet, or Microsoft Store, upgrading to PowerShell 7 is easy and seamless. Another advantageous way is being able to run PowerShell 7 alongside Windows PowerShell 5.1, making it quite practical for managing legacy systems and scripts.