Как переустановить powershell windows 10

As an attempt to repair, you can disable and re-enable Windows PowerShell. See this post on Microsoft’s forums. (Edit: Per Ramhound’s comments, note that this is (at best) unlikely to help. This does not uninstall or entirely disable all versions of Windows PowerShell)

If that doesn’t work, you can attempt to repair/reset/resinstall Windows. Note that your files and installed software will be affected by these options.

However (since you just said «PowerShell» and not explicitly «Windows PowerShell»), depending on your situation, you may wish instead to abandon Windows PowerShell and switch to PowerShell Core. (If so, you’ll likely want to disable Windows Powershell) This may be preferable to resinstalling/resetting Windows, and this is actually Microsoft’s prescribed solution for those who want the newer versions of PowerShell available; see this Microsoft docs page.

Here is Microsoft’s page on installing PowerShell Core. Here is a 3rd party guide, written in 2019.

В этой статье мы рассмотрим, как обновить версию 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

$PSVersionTable.PSVersion версия powershell

Чтобы обновить вашу версию 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

проверить версию .net

В моем случае код 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 (потребуется перезагрузка).

офлайн установка .NET Framework 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.

установка Windows Management Framework 5.1 kb3191564

После перезагрузки сервера, запустите консоль powershell.exe и убедитесь, что версия была обновлена до PowerShell 5.1.

обновление версии windows powershell до 5.1 в windows server 2012 r2

Если у вас остались снятые с поддержки 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 установщик PowerShell для windows

Скачайте 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 из msi пакета

Далее вы можете включить автоматическое обновление PowerShell Core через WIndows Update/WSUS (рассмотрено ниже).

разрешить автоматическое обновление powershell core 7.2+

Для установки 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.

install-powershell.ps1 скрипт обновления powershell

После окончания установки открывается окно PowerShell Core (pwsh.exe), проверьте версию PowerShell и убедитесь, что теперь это PoSh 7.3.3.

проверить что powershell core обновлен в windows

Используем менеджер пакетов 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

powershell core 7 в windows 10

Т.е. теперь на этом компьютере есть две версии: Windows PowerShell 5.1 и PowerShell Core 7.3.

две версии powershell на компьютере core и desktop

Чтобы узнать версию 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 установлен.

appx приложение Microsoft.PowerShell_7.3.3.0_x64__8wekyb3d8bbwe в microsoft store

Но есть и недостатки, связанные с тем, что такой PowerShell будет запускаться в песочнице.

ustanovkaобновление powershell core в windows 10 через microsoft store

Установка/обновление PowerShell Core на удаленных комьютерах

Рассмотрим два сценария установки или обновления версии PowerShell Core на множестве компьютерах.

Обновление PowerShell Core с помощью GPO

В домене Active Directory вы можете централизованно установить и обновить PowerShell Core с помощью групповой политики. Воспользуйтесь возможностями установки программ с помощью MSI пакетов в GPO.

  1. Скачайте установочный MSI файл PowerShell и скопируйте его в каталог SYSVOL на контроллере домена;
  2. Откройте консоль управления доменными GPO (
    gpmc.msc
    ), создайте новую GPO и назначьте ее на OU с компьютерами и серверами;
  3. Перейдите в раздел GPO Computer Configuration –> Software Settings, создайте новый пакет и укажите для него путь к установочному MSI файлу PowerShell в SYSVOL; обновление powershell в домене через gpo

    Для более тонкого нацеливания политики на клиентов можно использовать WMI фильтры GPO.

  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"}
    }

Будьте внимательными при использовании команд 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.

Разрешить Windows получаить обнволения с Windows Update для других продуктов

Теперь, когда вы нажимаете кнопку Check for Updates или запускаете сканирование обновлений через модуль PSWindowsUpdate, вы также будете получать обновления для PowerShell Core.

проверить новые обновления в windows

As an attempt to repair, you can disable and re-enable Windows PowerShell. See this post on Microsoft’s forums. (Edit: Per Ramhound’s comments, note that this is (at best) unlikely to help. This does not uninstall or entirely disable all versions of Windows PowerShell)

If that doesn’t work, you can attempt to repair/reset/resinstall Windows. Note that your files and installed software will be affected by these options.

However (since you just said «PowerShell» and not explicitly «Windows PowerShell»), depending on your situation, you may wish instead to abandon Windows PowerShell and switch to PowerShell Core. (If so, you’ll likely want to disable Windows Powershell) This may be preferable to resinstalling/resetting Windows, and this is actually Microsoft’s prescribed solution for those who want the newer versions of PowerShell available; see this Microsoft docs page.

Here is Microsoft’s page on installing PowerShell Core. Here is a 3rd party guide, written in 2019.

Содержание

  • Определение версии «PowerShell»
  • Способ 1: Windows Store
  • Способ 2: Установка из MSI-файла
  • Способ 3: Обновление из консоли
  • Способ 4: Менеджер пакетов «Winget»
  • Особенности установки версий «PowerShell»
  • Вопросы и ответы

Как обновить powershell на Windows 10

Перед тем как приступать к обновлению консоли «PowerShell», желательно узнать, какая версия используется на компьютере сейчас. Сделать это можно средствами самой же консоли.

  1. Откройте «PowerShell» из контекстного меню кнопки «Пуск». Запускать инструмент с правами администратора в данном случае можно, но не обязательно.
  2. Как обновить powershell на Windows 10-1

  3. Выполните в консоли команду host и посмотрите значение параметра «Version».
    Как обновить powershell на Windows 10-2
    Также для определения текущей версии можно использовать команду $PSVersionTable.PSVersion.major. Номер версии будет указан в столбце «Major».
  4. Как обновить powershell на Windows 10-3

Следует знать, что в настоящее время существует две ветки «PowerShell», представленные двумя разными отдельными платформами. Если в системе установлена версия 5.1 — это старая ветка, которая более не развивается. Версии от 6.0 и выше относятся к новой, активно развивающейся ветке. Обновить «PowerShell» v5.1 в смысле замены старой версии на новую нельзя, можно лишь установить новую версию консоли, при это обе версии смогут работать параллельно.

Способ 1: Windows Store

Если на компьютере имеется учетная запись Microsoft, выполнить обновления консоли проще всего будет через Магазин Windows. Этот способ хорош тем, что установленное приложение в дальнейшем станет обновляться автоматически, будучи контролируемым «Microsoft Store».

Скачать «PowerShell» из Магазина Windows

  1. Запустите «Microsoft Store» и найдите приложение «PowerShell» через поиск. Также попасть на нужную страницу Магазина можно из любого браузера, перейдя по ссылке выше.
  2. Нажмите кнопку «Получить», чтобы установить актуальную версию программы.
  3. Как обновить powershell на Windows 10-4

Минусом данного решения может стать запуск установленной консоли во встроенной в Windows «Песочнице».

Способ 2: Установка из MSI-файла

Это более универсальный способ обновления, он подходит для всех пользователей, в том числе тех, у которых нет учетной записи Microsoft или приложения «Windows Store».

Скачать «PowerShell» с официального сайта

  1. Скачайте установочный файл консоли с официальной страницы проекта. Для Windows 10 доступны 32-битная (win-x86.msi) и 64-битная (x64.msi) версии программы канала «Stable» или «LTS». Запустите установочный файл двойным кликом.
  2. Как обновить powershell на Windows 10-5

  3. Если необходимо, включите в окне мастера-установщика дополнительные опции. Нажмите «Next».
  4. Как обновить powershell на Windows 10-6

  5. В следующем окне мастера все можно оставить по умолчанию. Это обеспечит последующее автоматическое обновление «PowerShell Core» средствами «Центра обновления Windows». Нажмите «Next».
  6. Как обновить powershell на Windows 10-7

  7. Нажмите «Install», чтобы запустить процедуру установки приложения.
  8. Как обновить powershell на Windows 10-8

Способ 3: Обновление из консоли

Обновить «PowerShell» можно также и непосредственно из самой консоли. Этот способ дублирует установку из MSI-файла, разница лишь в том, что установщик загружается из запускается из интерфейса «PowerShell».

  1. Откройте «PowerShell» от имени администратора любым известным способом.
  2. Выполните команду скачивания и установки последней стабильной версии iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI".
  3. Как обновить powershell на Windows 10-9

По завершении установки должно открыться окно установленного приложения «PowerShell Core».

Способ 4: Менеджер пакетов «Winget»

Для установки или обновления «PowerShell» также можно использовать встроенный менеджер пакетов «Winget». Этот инструмент имеется в актуальных сборках Windows 10, в старых версиях системы менеджер отсутствует, но его можно установить отдельно, скачав UWP-установщик с сайта разработчика.

Скачать «Winget» с официального сайта

Подробнее: Установка приложений формата Appxbundle в Windows 10

  1. Установите «Winget», если не установлен.
  2. Запустите от имени администратора текущую версию «PowerShell» из контекстного меню кнопки «Пуск» или классическую «Командную строку» из поиска Windows.
  3. Выполните команду winget install --id Microsoft.Powershell --source winget. Эта команда обновляет консоль до последней версии.

    Если нужно обновиться до конкретной версии, выполните команду winget install --id=Microsoft.PowerShell -v "ver" -e, где ver – номер нужной версии.

  4. Как обновить powershell на Windows 10-10

Особенности установки версий «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.

Еще статьи по данной теме:

Помогла ли Вам статья?

В этом материале разберёмся как инсталлировать или обновить 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 наверняка знают зачем это делают.

  • Как переустановить paint windows 10
  • Как переустановить onedrive на windows 10
  • Как переустановить node js на windows
  • Как переустановить microsoft visual c на windows 10
  • Как переустановить microsoft net framework для windows 10