Я хочу обновить "системный" PowerShell, тот, который доступен через WIN+x
i
, я не могу скопировать файлы PowerShell 7 в системный PowerShell, так как он всегда используется. Поэтому я подозреваю, что система должна быть нетронутой, если нет возможности обновить ее, возможно ли перенаправить упомянутый ярлык для запуска PowerShell 7?
решение1
- Вы не можете обновить/заменить/модернизироватьвстроенная версия Windows PowerShell для ОС Windows.
- Вы можете установить только PowerShell Core(PowerShelv6 и выше) как бок о бокустановить.
- Не существует собственного способа сделать PowerShell Core средой ОС по умолчанию.
Такой возможности или варианта использования для копирования файлов PSv7 поверх WinPS не существует.Системные файлы используются всегда и не могут быть заменены во время работы ОС.
Вам придется вручную внести множество изменений в файловую систему и реестр, чтобы приблизиться к ним, но это все равно ничего не заменит. Вы просто меняете указатели на PSv7.
По данным Microsoft, в обозримом будущем Windows Powershell станет частью ОС Windows.
PowerShell Core (v6 и выше) — это кроссплатформенный проект с открытым исходным кодом, который, как уже заявила компания MS, никогда не станет частью ОС, как Windows PowerShell, из-за природы открытого программного обеспечения (OSS) или PowerShell v6 и выше.
Если вы имеете в виду изменение настроек WinX, настроек правой кнопки мыши и т. д., то это взлом файловой системы и реестра. В сети есть несколько статей по этой теме.
Вам также нужно будет установить VSCode или настройки Windows Terminal на PSCore. Поскольку больше никакой работы в WinPS не будет, это также означает, что PowerShell ISE останется тем, чем он является сегодня, навсегда. В Windows PowerShell ISE нет собственного способа использовать PSv7.
Однако есть способы использовать PSv7 через runspaces в ISE. Смотрите эту статью/видео.
https://old.ironmansoftware.com/using-powershell-core-6-and-7-in-the-windows-powershell-ise
Но избавьте себя от головной боли и просто используйте VSCode, если только вам не запрещено его устанавливать.
PowerShell 7 работает бок о бок с Windows PowerShell, позволяя вам легко тестировать и сравнивать редакции перед развертыванием. Миграция проста, быстра и безопасна.
PowerShell 7 поддерживается в следующих версиях Windows
• Windows 8.1 и 10
• Windows Server 2012, 2012 R2, 2016 и 2019
PowerShell 7 также работает на macOS и нескольких дистрибутивах Linux. Список поддерживаемых операционных систем и информацию о жизненном цикле поддержки см. в разделе Жизненный цикл поддержки PowerShell.
Использование PowerShell 7 одновременно с Windows PowerShell 5.1
PowerShell 7 разработан для сосуществования с Windows PowerShell 5.1. Следующие функции гарантируют, что ваши инвестиции в PowerShell защищены, а переход на PowerShell 7 будет простым.
• Отдельный путь установки и имя исполняемого файла
• Отдельный PSModulePath
• Отдельные профили для каждой версии
• Улучшена совместимость модулей
• Новые удаленные конечные точки
• Поддержка групповой политики
• Отдельные журналы событий
Отдельный путь установки и имя исполняемого файла
PowerShell 7 устанавливается в новый каталог, обеспечивая параллельное выполнение с Windows PowerShell 5.1.
Места установки по версиям:
• Windows PowerShell 5.1: $env:WINDIR\System32\WindowsPowerShell\v1.0
• PowerShell Core 6.x: $env:ProgramFiles\PowerShell\6
• PowerShell 7:$env:ProgramFiles\PowerShell\7
Новое расположение добавляется в ваш PATH, что позволяет вам запускать как Windows PowerShell 5.1, так и PowerShell 7. Если вы переходите с PowerShell Core 6.x на PowerShell 7, PowerShell 6 удаляется, а PATH заменяется.