Befehle, um PowerShell ohne Rückfragen zu installieren, wieder zu entfernen und in Verteilungswerkzeugen zu erkennen. Ein Befehl erscheint nur, wenn er feststeht: aus dem Manifest oder als dokumentierter Standard der jeweiligen Installer-Technik.
Passende Anleitung: Silent-Install-Parameter: MSI, NSIS, Inno Setup · Programm über Registry oder PowerShell deinstallieren
Mit winget
winget install --id Microsoft.PowerShell -e --silent --accept-package-agreements --accept-source-agreementswinget upgrade --id Microsoft.PowerShell -e --silentwinget uninstall --id Microsoft.PowerShell -e --silentNach Installer
64-Bit · MSIX
Add-AppxPackage -Path PowerShell-7.6.9.msixbundleGet-AppxPackage -Name Microsoft.PowerShell | Remove-AppxPackage64-Bit · MSI · Alle Benutzer
msiexec /i PowerShell-7.6.9-win-x64.msi /qn /norestartmsiexec /i PowerShell-7.6.9-win-x64.msi /qn /norestart /l*v "%TEMP%\powershell-install.log"msiexec /x {5417B253-1A6D-4638-BC94-743A6EC2E6F4} /qn /norestart- MSI-Produktcode
- {5417B253-1A6D-4638-BC94-743A6EC2E6F4}
- Deinstallationsschlüssel in der Registry
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{5417B253-1A6D-4638-BC94-743A6EC2E6F4}
ARM64 · MSIX
Add-AppxPackage -Path PowerShell-7.6.9.msixbundleGet-AppxPackage -Name Microsoft.PowerShell | Remove-AppxPackageARM64 · MSI · Alle Benutzer
msiexec /i PowerShell-7.6.9-win-arm64.msi /qn /norestartmsiexec /i PowerShell-7.6.9-win-arm64.msi /qn /norestart /l*v "%TEMP%\powershell-install.log"msiexec /x {A55580A2-6A8D-45DB-A673-0601CBA518C8} /qn /norestart- MSI-Produktcode
- {A55580A2-6A8D-45DB-A673-0601CBA518C8}
- Deinstallationsschlüssel in der Registry
- HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{A55580A2-6A8D-45DB-A673-0601CBA518C8}
32-Bit · MSIX
Add-AppxPackage -Path PowerShell-7.6.9.msixbundleGet-AppxPackage -Name Microsoft.PowerShell | Remove-AppxPackage32-Bit · MSI · Alle Benutzer
msiexec /i PowerShell-7.6.9-win-x86.msi /qn /norestartmsiexec /i PowerShell-7.6.9-win-x86.msi /qn /norestart /l*v "%TEMP%\powershell-install.log"msiexec /x {F2DBB6E6-6A92-4712-A77E-350ADA889C0A} /qn /norestart- MSI-Produktcode
- {F2DBB6E6-6A92-4712-A77E-350ADA889C0A}
- Deinstallationsschlüssel in der Registry
- HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{F2DBB6E6-6A92-4712-A77E-350ADA889C0A}
PowerShell: herunterladen, prüfen, installieren
Lädt die offizielle Datei herunter, prüft den SHA256-Hash und installiert still.
$url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9.msixbundle'
$sha256 = 'DA75C8AA23EDDA52E888FB586A46B923AB37A7C243719C2E8914B00130C5917A'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9.msixbundle'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Add-AppxPackage -Path $file $url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9-win-x64.msi'
$sha256 = '50D33C7494AAF82B987CFD4DE3F232D04F91FDD4C0DEECA8A669CCED3E7CF8F9'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9-win-x64.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait $url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9.msixbundle'
$sha256 = 'DA75C8AA23EDDA52E888FB586A46B923AB37A7C243719C2E8914B00130C5917A'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9.msixbundle'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Add-AppxPackage -Path $file $url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9-win-arm64.msi'
$sha256 = 'F29D127A798DA0D3FEC9224171AE4D85453ECB466CE53A957237BCA4008C1D2B'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9-win-arm64.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait $url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9.msixbundle'
$sha256 = 'DA75C8AA23EDDA52E888FB586A46B923AB37A7C243719C2E8914B00130C5917A'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9.msixbundle'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Add-AppxPackage -Path $file $url = 'https://github.com/PowerShell/PowerShell/releases/download/v7.6.9/PowerShell-7.6.9-win-x86.msi'
$sha256 = '067659D573A953FF93D1BDD87D7CDD3C34BF1B9C8B9226C5C2164215F3C37608'
$file = Join-Path $env:TEMP 'PowerShell-7.6.9-win-x86.msi'
Invoke-WebRequest -Uri $url -OutFile $file -UseBasicParsing
if ((Get-FileHash $file -Algorithm SHA256).Hash -ne $sha256) { throw 'SHA256 mismatch' }
Start-Process msiexec.exe -ArgumentList '/i', ('"{0}"' -f $file), '/qn', '/norestart' -Wait