¿Cómo desinstalar una actualización de Windows (parche) en modo silencioso usando terminal o PowerShell?

¿Cómo desinstalar una actualización de Windows (parche) en modo silencioso usando terminal o PowerShell?

Intenté usar wusa /uninstall /kb:4497464 /quiet, pero desde Windows 10 han dejado de utilizar la quietbandera. ¿Hay alguna otra forma de desinstalar?

Respuesta1

Esta característica quedó obsoleta y se eliminó la capacidad de desinstalar actualizaciones en modo silencioso. Referirse a Funciones obsoletas de Windows 10 que dice

El uso de wusa para desinstalar silenciosamente una actualización ha quedado obsoleto. El comando de desinstalación con el modificador /quiet falla con el ID de evento 8 en el registro de eventos de instalación. Desinstalar actualizaciones silenciosamente podría ser un riesgo para la seguridad porque el software malicioso podría desinstalar silenciosamente una actualización en segundo plano sin la intervención del usuario.

Usando PowerShell, ejecute el siguiente comando para encontrar el identificador de la actualización:

dism /online /get-packages /format:table | findstr /i "package_for"

ingrese la descripción de la imagen aquí

Para eliminarlo realmente:

Get-WindowsPackage -Online -PackageName "{PACKAGE-NAME}" |Remove-WindowsPackage -Online -NoRestart -Verbose

Fuente: No se puede usar wusa para desinstalar actualizaciones en modo silencioso en el servidor 2016/2019. trabajos de eliminación de sistemas operativos antiguos.

Respuesta2

secuencia de comandos de PowerShell:

(dism /online /get-packages /format:table) | ForEach-Object {
$tmp=$_ ;
$tmpArr=$tmp.Split("|") ;
if ( $tmpArr.Length -eq 4 )
{
$tmpName=$tmpArr[0].Trim(" ") ;
$tmpType=$tmpArr[2].Trim(" ") ;
if ( $tmpType.ToLower().Contains("update") )
{
Write-Host "--- delete. |$tmpName| . |$tmpType|" ;
Get-WindowsPackage -Online -PackageName "$tmpName" | Remove-WindowsPackage -Online -NoRestart -Verbose ;
}
}
}

información relacionada