Как проверить версию PowerShell в Windows

PowerShell — основная оболочка автоматизации и администрирования в Windows. Как и Command Prompt, PowerShell позволяет управлять настройками системы через командную строку. Периодически имеет смысл проверить версию PowerShell на компьютере, чтобы убедиться, что доступны последние функции, исправления и совместимость с модулями.
Коротко о терминах
- PowerShell — оболочка Microsoft, поставляемая с Windows (обычно версия 5.1 на классическом Windows PowerShell).
- PowerShell Core / pwsh — кроссплатформенная версия PowerShell (версии 6 и выше), распространяемая отдельно.
Проверка версии из PowerShell (самый быстрый способ)
- Откройте меню «Пуск». Введите
powershell
и выберите подходящую запись. Для PowerShell Core введитеpwsh
. - В открытой оболочке выполните команду:
$PSVersionTable
- В выводе найдите строку
PSVersion
. Это и есть версия PowerShell, установленная в системе.
Пример: PSVersion 5.1.22621.1
означает, что на ПК установлена версия 5.1.
Дополнительные команды, которые иногда полезны:
Get-Host | Select-Object Version
# или для PowerShell Core
pwsh --version
Проверка версии через реестр Windows (без запуска PowerShell)
Если вы не хотите запускать оболочку, можно посмотреть версию через Редактор реестра:
- Откройте меню «Пуск», введите
regedit
и запустите Редактор реестра. - Перейдите по пути:
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine
- В правой части окна найдите значение
PowerShellVersion
. В нём указана версия PowerShell, работает ли она в системе.
Когда эти методы могут не сработать и как это проверить
- Ограниченные права: если у вас нет прав администратора, доступ к некоторым ключам реестра и файлам может быть закрыт. Запустите Regedit или PowerShell от имени администратора.
- Наличие обеих версий: на одном ПК могут быть и Windows PowerShell (5.1), и PowerShell Core (pwsh). Убедитесь, какую оболочку вы проверяете.
- Пакетный менеджер: если PowerShell был установлен через сторонний пакет (например, Chocolatey или winget), информация в реестре может не отражать версию pwsh. Для pwsh используйте
pwsh --version
.
Альтернативные подходы
- Проверить свойства файла:
- Для классического PowerShell откройте: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -> Свойства -> Подробно -> Версия файла.
- Для PowerShell Core найдите путь к
pwsh.exe
и посмотрите версию файла.
- Использовать пакетный менеджер:
winget list --name PowerShell
илиchoco list --local-only powershell
(если установлены winget/choco). - Сценарий на C# или скрипт используя System.Management.Automation для получения версии программно.
Практическая методология для администратора (короткий SOP)
- Определите цель: проверить системный PowerShell или pwsh.
- Если цель — быстрая проверка, откройте оболочку и выполните
$PSVersionTable
илиpwsh --version
. - Если нужно централизованно собрать данные с множества машин, используйте удалённое выполнение команд (PowerShell Remoting) или инвентаризацию через SCCM/Intune.
- Если требуется обновление — загрузите официальную сборку с docs.microsoft.com или используйте надёжный пакетный менеджер.
Чек-лист для проверки
- [ ] Проверили
$PSVersionTable
илиpwsh --version
. - Подтвердили, какая именно оболочка (Windows PowerShell vs PowerShell Core).
- Проверили права доступа при чтении реестра.
- Задокументировали версии для всех управляемых машин.
Decision flow (выбор метода)
flowchart TD
A[Нужно узнать версию PowerShell?] --> B{Установлен pwsh?}
B -- Да --> C[Откройте pwsh и выполните pwsh --version]
B -- Нет --> D[Откройте powershell и выполните $PSVersionTable]
D --> E{Нет доступа к оболочке?}
E -- Да --> F[Откройте regedit и проверьте PowerShellVersion]
E -- Нет --> G[Соберите результат и задокументируйте]
Критерии приёмки
- Вы видите строку
PSVersion
в$PSVersionTable
или значениеPowerShellVersion
в реестре. - Для pwsh вы получаете корректную строку через
pwsh --version
. - Версия зафиксирована в учёте конфигурации или инвентаре.
Что делать, если версия устарела
Важно: обновляйте PowerShell только из официальных источников. Для PowerShell Core используйте установочный пакет с официальной страницы или менеджер пакетов. Для Windows PowerShell обновления зависят от обновлений Windows и пакетов Feature on Demand.
Важно: разные версии могут быть несовместимы с некоторыми модулями. Перед массовым обновлением протестируйте критичные сценарии в контролируемой среде.
Краткое резюме
Проверить версию PowerShell просто: откройте оболочку и запустите $PSVersionTable
или pwsh --version
. При отсутствии доступа используйте редактор реестра. Для администраторов добавлены чек-листы и методология для централизованной проверки и обновления.
Замечание: если вам нужна помощь с массовой инвентаризацией версий PowerShell на сотнях машин, можно составить скрипт для удалённого сбора и отчёта — напишите, какой у вас инструмент управления, и я помогу с шаблоном.
Похожие материалы

Запуск программ при старте Windows

Удаление предустановленных приложений на Android и iOS
Dev Error 6068 в Warzone — как исправить

Проверить версию PowerShell в Windows

Как вручную установить расширение в Microsoft Edge
