Обновите Powershell через командную строку

5045
LosManos

Я хочу обновить версию Powershell для машины . Можно ли это сделать через командную строку?

Моя текущая потребность заключается в обновлении с PS 4 до PS 5 на сервере Windows 2012R2.

Я полагаю, что не существует универсального решения для всех версий Windows и всех версий PS, смешанных с оговорками, такими как PS4, требующих Dotnet4.5, поэтому давайте сделаем этот вопрос максимально простым, как в первых двух предложениях выше.

-1

3 ответа на вопрос

1
Alexandr Kovalchuk

Вы должны скачать WMF 5.0 здесь . Затем запустите команду из cmd:

wusa.exe D:\W2K12-KB3134759-x64.msu 

или где вы скачали пакет.

1
Remy van Tour

Вот небольшой трюк с использованием шоколада

#Install Chocolatey #region echo "Setting up Chocolatey software package manager" New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT  Get-PackageProvider -Name chocolatey -Force  echo "Setting up Full Chocolatey Install" Install-Package -Name Chocolatey -Force -ProviderName chocolatey $chocopath = (Get-Package chocolatey |  ?{$_.Name -eq "chocolatey"} |  Select @} |  Select -ExpandProperty Source) & $chocopath "upgrade all -y" choco install chocolatey-core.extension --force  echo "Creating daily task to automatically upgrade Chocolatey packages" # adapted from https://blogs.technet.microsoft.com/heyscriptingguy/2013/11/23/using-scheduled-tasks-and-scheduled-jobs-in-powershell/ $ScheduledJob = @{ Name = "Chocolatey Daily Upgrade" ScriptBlock =  Trigger = New-JobTrigger -Daily -at 2am ScheduledJobOption = New-ScheduledJobOption -RunElevated -MultipleInstancePolicy StopExisting -RequireNetwork } Register-ScheduledJob @ScheduledJob #endregion  #Update Powershell #region $ErrorActionPreference = "silentlycontinue"  $PSVersionTable.PSVersion choco install powershell -y choco upgrade powershell -y  $ErrorActionPreference = "continue" #endregion 
[It] (https://chocolatey.org/packages/PowerShell) является [доверенным пакетом (https://chocolatey.org/faq#what-is-a-trusted-package), но он не поддерживается Microsoft. Хорошая информация, хотя. LosManos 6 лет назад 0
-1
postanote

Вы должны написать свой собственный сценарий, чтобы сделать это. Предварительно написано, что сделает это для вас без каких-либо усилий с вашей стороны. Загрузка и установка файлов из Интернета - очень распространенная практика. Есть много онлайн-инструкций и видео о том, как это сделать.

Перевод:

  1. Вы переходите по URL-адресу, на который указывает Александр.
  2. Нажмите «Загрузить», чтобы перейти на следующую страницу, перейти на прямой URL и сохранить эту ссылку.
  3. Затем используйте веб-командлеты PowerShell, чтобы загрузить этот файл.
  4. Затем используйте командлеты, чтобы начать установку или установку без вывода сообщений.

Есть много примеров в Интернете на тему, как загрузить файл из Интернета. Даже готовые образцы, которые вы можете просмотреть и настроить для вас.

Посмотрите галерею MS PowerShell в качестве отправной точки.

Или посмотрите примеры встроенной PowerShell и / или интерактивную справку.

# Get parameters, examples, full and Online help for a cmdlet or function  (Get-Command -Name Invoke-WebRequest).Parameters Get-help -Name Invoke-WebRequest -Examples Get-help -Name Invoke-WebRequest -Full Get-help -Name Invoke-WebRequest -Online  (Get-Command -Name Invoke-Command).Parameters Get-help -Name Invoke-Command -Examples Get-help -Name Invoke-Command -Full Get-help -Name Invoke-Command -Online  (Get-Command -Name Start-Process).Parameters Get-help -Name Start-Process -Examples Get-help -Name Start-Process -Full Get-help -Name Start-Process -Online