This feature uses a shared cache directory to prevent machines in a local network from downloading updates more than once.
The /install_cache option first of all executes the online search (exactly the same one as the /search option does, considering all parameters for criteria and filters).
The parameter cache_dir should be a folder on a local network share where multiple machines have access.
Before downloading the updates from the result list, WuInstall checks in the cache_dir if the update has already been downloaded there by another machine. If the update is not in the cache folder, WuInstall downloads the update (from the configured download location - WSUS and/or windowsupdate.com) and puts it into the cache directory, in a subfolder, which has the Update ID as name.
If the update is present in the folder (if there is a subdirectory with the Update ID), WuInstall tries to copy the update from this shared cache folder to the local update cache. If this fails for some reason, WuInstall deletes the subdirectory in the shared cache folder (because there is apparently something wrong with the update) and downloads the update directly from the Internet.
For example, the first machine calls:
WUInstall.exe /install_cache p:\temp
and the update "Windows Malicious Software Removal Tool - August 2022 (KB890830)" is not yet present in the cache directory. First of all, the cache is checked for a directory with the same name as the Update ID (in this case 20110b11-6dd2-4153-a76d-e660ec78ebed), and the update is not found:
Checking cache for update: Windows Malicious Software Removal Tool - August 2010 (KB890830) Update Windows Malicious Software Removal Tool - August 2022 (KB890830) Multi-Lingual - Delta not found in cache directory p:\temp\20110b11-6dd2-4153-a76d-e660ec78ebed
So, the update will be downloaded from the configured location (here, the Windows Update site) and copied into the cache folder:
Update bundle not found, downloading... Copying downloads directly... Downloading: http://download.windowsupdate.com/msdownload/update/software/uprl/2010/08/windows-kb890830-v3.10-delta_b6366a428af17c9c7c524ebd15aafe3608d3fa39.exe to p:\temp\20110b11-6dd2-4153-a76d-e660ec78ebed/windows-kb890830-v3.10-delta_b6366a428af17c9c7c524ebd15aafe3608d3fa39.exe ... OK Download OK
After the download is finished, WuInstall checks the cache again and finds the just downloaded update there and copies it to the local cache of the machine (the local cache is usually located in the following directory: Windows\SoftwareDistribution\Download)
Checking cache again... Update Windows Malicious Software Removal Tool - August 2022 (KB890830) Multi-Lingual - Delta found in cache directory, copying to local cache... OK
After that, the download of the update is finished and it is installed.
Later, another machine (which also needs the KB890830 update) also calls:
WUInstall.exe /install_cache p:\temp
Now, the update is present in the cache directory and is copied from there without downloading it from the Internet or WSUS Server (which saves a lot of Internet bandwidth since the cache directory is in the local network):
Checking cache for update: Windows Malicious Software Removal Tool - August 2010 (KB890830) Update Windows Malicious Software Removal Tool - August 2022 (KB890830) Multi-Lingual - Delta found in cache directory, copying to local cache... OK
This option does the same as /install_cache, but it only downloads the updates, without installing them (which can be used for example to populate the cache with updates, without installing them).
In combination with /install_cache or /download_cache: does not clear the cache directory on error.
This option clears the local Windows Update cache.
The local cache is located at %systemroot%\SoftwareDistribution\Download.