86

It often happens that I have to watch this screen for minutes:

enter image description here

I have no clue what's happening in the back. And I'm also not interested in watching the WindowsUpdate.log for changes.

I would love to know if there's a way that gives more feedback. Preferably something I can invoke from the command line (like apt-get).

1

8 Answers 8

60

In Windows 10, you can use the PSWindowsUpdate PowerShell module.

> Install-Module PSWindowsUpdate
> Get-WindowsUpdate
> Install-WindowsUpdate

enter image description here

8
  • 2
    Works in Windows 7 too. :) Mar 8, 2017 at 1:38
  • 18
    Win10 restricted due to a script policy. Start ps-console as admin Powershell.exe -ExecutionPolicy Unrestricted then run given commands. Probably need to run Import-Module PSWindowsUpdate before Get-WindowsUpdate. This policy applies to this PS session only.
    – Whome
    Jun 18, 2017 at 18:42
  • I found the more reasonably restrictive Set-ExecutionPolicy -ExecutionPolicy RemoteSigned which is also persistent (going into the Local Poilcy object) docs.microsoft.com/en-us/powershell/module/…
    – BaseZen
    Mar 28, 2018 at 3:33
  • This is weird. On Win8.1 I get: Install-Module : The term 'Install-Module' is not recognized... and Get-WindowsUpdate : The term 'Get-WUList' is not recognized....
    – not2qubit
    Nov 18, 2018 at 18:19
  • Didn't work in old PS 5+ but works now in PWSH 6.1.1.
    – not2qubit
    Jan 28, 2019 at 9:16
71

You can invoke Windows Update from command line using wuauclt.exe utility located in %windir%\system32\ folder.

To check for updates,

wuauclt.exe /detectnow

To check and update,

wuauclt.exe /detectnow /updatenow

This will not work if you have set "Never check for updates" in Windows Update settings. Also probably automatic updates must be enabled for '/updatenow' switch to work (install updates).

In versions of Windows prior to Windows 10, you can also start the GUI for Windows Update by entering following command (located in %windir%\system32\ folder):

wuapp.exe

This only opens the update application and checks available updates, it does not install them. Also if you have set "Never check for updates" in Windows Update settings, this does not checks for updates too, you will have to click the "Check for updates" button.

3
34

I found some great suggestions when looking into How to to Install Windows Updates on Windows Server 2008 R2 Core.

One suggestion I really liked, is the WUA_SearchDownloadInstall.vbs script.

Available Updates being listed

enter image description here

Update Installation

enter image description here

3
  • 3
    Another option would be WSUS Offline. Mar 18, 2013 at 22:07
  • Great! Just need to update script to disable prompts, or add command line switches.
    – MarcusUA
    May 17, 2017 at 12:26
  • How to tell in 2018 (Windows 10 home) install updates but never in 8AM till 6PM?
    – YumYumYum
    Jun 5, 2018 at 12:25
11

You can use wusa.exe which is part of Windows 7.

I wanted to remove the Windows 10 Update icon from the taskbar, so I wrote this AutoHotkey script which invokes wusa.

wusa := "c:\windows\system32\wusa.exe"
runwait %wusa%  /uninstall /kb:2952664 /norestart
runwait %wusa%  /uninstall /kb:3021917    /norestart
runwait, %wusa%  /uninstall /kb:3035583 /norestart
msgbox, okay, all done!`rDon't forget to -hide- the updates now.

So you can use wusa.exe to manage Windows updates and install .msu files.

Here are the commandline parameters for wusa: https://support.microsoft.com/en-us/kb/262841

wusa.exe /uninstall /kb:123456 /quiet /norestart
wusa.exe Windows6.1-KB123456-x86.msu /quiet /norestart

This page has a collection of other ways to manage updates from the commandline.

This page explains how wusa.exe works.

To see what updates are installed (via commandline):

systeminfo | find ": KB"
2
  • 2
    Its really sad that I am here looking at this answer because malware known as Update to Windows 10 has hijcaked the update process, and I can't install security updates.
    – jww
    Oct 16, 2015 at 23:38
  • There are a number of reasons why Windows Updates might quit working, and a number of solutions, I would be happy to answer, but this is not the right topic... Just suffice to say that in the end, I wanted offline updates and ended up doing this: forums.mydigitallife.info/threads/… which works quite well!
    – bgmCoder
    Oct 19, 2015 at 14:14
9

I'm using WuInstall. It is a command line tool for managing Windows Updates. You have many great options like displaying the installation progress, to specify if you want a reboot and when, and logfiles are available for every process. Regards

1
  • But its not FREE?????
    – YumYumYum
    Jun 5, 2018 at 12:27
5

Windows 10, and Windows Server 2016 or above, use USOClient.exe to scan, download, and install updates.

  • StartScan Used To Start Scan
  • StartDownload Used to Start Download of Patches
  • StartInstall Used to Install Downloaded Patches
  • RefreshSettings Refresh Settings if any changes were made
  • StartInteractiveScan May ask for user input and/or open dialogues to show progress or report errors
  • RestartDevice Restart device to finish installation of updates
  • ScanInstallWait Combined Scan Download Install
  • ResumeUpdate Resume Update Installation On Boot

Command Line Equivalent of wuauclt in Windows 10 / Windows Server 2016

1
  • Not work in my environment. Now it's 2023. I guess it used to work but not now, for Windows Server 2016.
    – Robert
    Dec 6, 2023 at 3:54
2

Based on the answer from kizzx2 I created two one liners for the command prompt.

Run the following code from an elevated command line.

Installation of the update module:

Powershell.exe -ExecutionPolicy Unrestricted -command "Install-Module PSWindowsUpdate -force"

Performing update from command line:

Powershell.exe -ExecutionPolicy Unrestricted -command "Import-Module PSWindowsUpdate; Get-WindowsUpdate; Install-WindowsUpdate"

Furthermore, you can add the options -AcceptAll and -AutoReboot to the Install-WindowsUpdate command.

1
  • Does this trigger the 'opt-in' to the beta program on Windows 10, in the same way that manually checking for updates does? (digitaltrends.com/computing/windows10-check-for-updates) Apr 3, 2019 at 23:33
0

The easiest and most reliable way I found is to call the COM object from PowerShell.

$autoUpdate = New-Object -ComObject Microsoft.Update.AutoUpdate
$autoUpdate.DetectNow()

The other methods of the object seem to do nothing on Windows 10. See also:
https://docs.microsoft.com/en-us/windows/desktop/api/wuapi/nn-wuapi-iautomaticupdates

If you don't want to use PowerShell you can run

C:\Windows\System32\UsoClient.exe StartScan

directly from the command line.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .