Update-PSResource downloads and installs the newest version of a package already installed on the
local machine. This cmdlet replaces the Update-Module and Update-Script cmdlets from
PowerShellGet v2. The new version of the resource is installed side-by-side with previous
versions in a new versioned folder.
By default, Update-PSResource installs the latest version of the package and any of its
dependencies without deleting the older versions installed. There is no command to uninstall older
versions of a package. You must manually delete the files and folders of the older versions.
Update-PSResource doesn't load the updated module into the current session. You must import the
new version or start a new session to use the updated module. For more information, see
Import-Module.
Examples
Example 1
In this example, the user already has the TestModule package installed and they update the
package.
Get-PSResource -Name "TestModule"
Name Version Prerelease Description
---- ------- ---------- -----------
TestModule 1.2.0 test
Update-PSResource -Name "TestModule"
Name Version Prerelease Description
---- ------- ---------- -----------
TestModule 1.3.0 test
TestModule 1.2.0 test
Parameters
-AcceptLicense
For resources that require a license, AcceptLicense automatically accepts the license agreement
during the update.
Specifies the name of one or more resources to update. Wildcards are supported but NuGet only
accepts the * character. NuGet doesn't support wildcard searches of local (file-based)
repositories.
Specifies one or more repository names to search. If not specified, search includes all registered
repositories, in priority order (highest first), until a repository is found that contains the
package. Repositories are sorted by priority then by name. Lower Priority values have a higher
precedence.
When searching for resources across multiple repositories, the PSResourceGet cmdlets search the
repositories using this sort order. Update-PSResource updates the first matching package from the
sorted list of repositories.
The parameter supports the * wildcard character. If you specify multiple repositories, all names
must include or omit the wildcard character. You can't specify a mix of names with and without
wildcards.
Specifies the path to temporarily install the resource before actual installatoin. If no temporary
path is provided, the resource is temporarily installed in the current user's temporary folder.
Specifies the version of the resource to be returned. The value can be an exact version or a version
range using the NuGet versioning syntax.
For more information about NuGet version ranges, see
Package versioning.
PowerShellGet supports all but the minimum inclusive version listed in the NuGet version range
documentation. Using 1.0.0.0 as the version doesn't yield versions 1.0.0.0 and higher (minimum
inclusive range). Instead, the value is considered to be the required version. To search for a
minimum inclusive range, use [1.0.0.0, ] as the version range.
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable,
-InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable,
-ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see
about_CommonParameters.
By default, the cmdlet doesn't return any objects. When the PassThru parameter is used, the
cmdlet outputs a PSResourceInfo object for the saved resource.
Notes
The module defines udres as an alias for Update-PSResource.
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.