Cmdlets do PackageManagementPackageManagement Cmdlets

Esse é o núcleo do PackageManagement para dar suporte ao SDII (descoberta, instalação e inventário) de software.This is the core of PackageManagement to support software discovery, installation, and inventory (SDII). Experimente os cmdlets para essas operações:Try out the cmdlets for these operations:

  • Find-PackageFind-Package
  • Find-PackageProviderFind-PackageProvider
  • Get-PackageGet-Package
  • Get-PackageProviderGet-PackageProvider
  • Get-PackageSourceGet-PackageSource
  • Import-PackageProviderImport-PackageProvider
  • Install-PackageInstall-Package
  • Install-PackageProviderInstall-PackageProvider
  • Register-PackageSourceRegister-PackageSource
  • Save-PackageSave-Package
  • Set-PackageSourceSet-PackageSource
  • Uninstall-PackageUninstall-Package
  • Unregister-PackageSourceUnregister-PackageSource

Como o PackageManagement é um módulo PowerShell, é possível fazer o seguinte para atualizar o próprio PackageManagement:As PackageManagement is a PowerShell module, you can do the following to update PackageManagement itself:

PS C:\> Install-Module PackageManagement –Force

Nesse caso, você terá de entrar novamente na sessão do PowerShell para alternar para a nova versão do PackageManagement.In this case, you will have to re-enter PowerShell session to switch to the new version of PackageManagement.

Cmdlet Find-PackageFind-Package Cmdlet

Esse cmdlet permite a descoberta de pacotes de software em origens do pacote disponíveis usando provedores de pacote carregados.This cmdlet allows discovery of software packages in available package sources using loaded package providers.

# Find all available Windows PowerShell module packages from galleries registered
# with PowerShellGet provider
Find-Package -Provider PowerShellGet -Source PSGallery

# Find a package from a provider that is not yet installed
# This will bootstrap NuGet provider and then search for jquery package using NuGet
# with <http://www.nuget.org/api/v2/> as source
Find-Package -Name jquery –Provider NuGet -Source http://www.nuget.org/api/v2/

# Find package with name and version
# Here we are assuming that the user already registered nuget.org using
# Register-PackageSource. You can specify either the provider or the source, or
# neither. For the latter, performance may be less optimal as it searches through all
# the providers and registered sources.
Find-Package -Name jquery –Provider NuGet –RequiredVersion 2.1.4 -Source nuget.org

Cmdlet Find-PackageProviderFind-PackageProvider Cmdlet

O cmdlet Find-PackageProvider localiza provedores de PackageManagement correspondentes que estão disponíveis nas origens do pacote registrados no PowerShellGet.The Find-PackageProvider cmdlet finds matching PackageManagement providers that are available in package sources registered with PowerShellGet. Esses são os provedores de pacote disponíveis para instalação com o cmdlet Install-PackageProvider.These are package providers available for installation with the Install-PackageProvider cmdlet. Por padrão, isso inclui os módulos disponíveis na Galeria do PowerShell com as marcas “PackageManagement” e “Provider”.By default, this includes modules available in the PowerShell Gallery with the 'PackageManagement' and 'Provider' Tags.

Find-PackageProvider também localiza provedores do PackageManagement correspondentes disponíveis no repositório de blob do Azure de PackageManagement, em que podemos usar o provedor de inicializadores do PackageManagement para encontrar e instalá-los.Find-PackageProvider also finds matching PackageManagement providers that are available in the PackageManagement azure blob store where we use the PackageManagement boostrapper provider for finding and installing them.

#Find all available package providers in PackageManagement azure blob store as well as in PowerShellGallery.com
Find-PackageProvider

#Find all versions of a provider
Find-PackageProvider -Name "Nuget" -AllVersions

#Find a provider from a specified source
Find-PackageProvider -Name "Gistprovider" -Source "PSGallery"

Cmdlet Get-PackageGet-Package Cmdlet

Esse cmdlet retorna uma lista de todos os pacotes de software que foram instaladas usando o PackageManagement.This cmdlet returns a list of all software packages that have been installed using PackageManagement.

# Get all the packages installed by Programs provider
Get-Package –Provider Programs

# Get all the packages installed by NuGet provider at c:\test using the dynamic
# parameter destination
Get-Package –Provider NuGet -Destination c:\test

Cmdlet Get-PackageProviderGet-PackageProvider Cmdlet

Provedores de pacote carregados e que estão prontos para ser usados no computador local podem ser inventariados usando o cmdlet.Package providers that are loaded and ready to be used on the local machine can be inventoried by using the cmdlet.

# Get all currently loaded package providers
Get-PackageProvider

# The following cmdlet will show all the package providers available on the machine (including those that are not loaded):
Get-PackageProvider -ListAvailable

Cmdlet Get-PackageSourceGet-PackageSource Cmdlet

Esse cmdlet obtém uma lista de origens do pacote registrados para um provedor de pacote.This cmdlet gets a list of package sources that are registered for a package provider.

# Get all package sources
Get-PackageSource

# Get all package sources for a specific provider
Get-PackageSource –ProviderName PowerShellGet

Cmdlet Import-PackageProviderImport-PackageProvider Cmdlet

Esse cmdlet adiciona provedores do pacote do Gerenciamento de Pacotes à sessão atual.This cmdlet adds Package Management package providers to the current session.

# Import a package provider from the local machine
Import-PackageProvider –Name MyProvider

#The -Name parameter can be either the name of the provider or the full path to the provider. Currently, we support .dll, .exe and.psm1 for the full path case. If the name of the provider is used for the -Name parameter, then additional version parameters such as -RequiredVersion, -MinimumVersion and -MaximumVersion may be specified. Otherwise, the latest version of the provider will be imported.

#If a package provider is not yet loaded to your system, we can discover and install on-demand. You can use explicit discovery and install cmdlets to do so:
 Find-PackageProvider
 Install-PackageProvider –Name MyProvider

#After installed, follow the Import-PackageProvider to load it to your system.

# Import a specific version of a package provider. PackageManagement supports installations of multiple versions of a package provider using PackageProvider cmdlets (not by bootstrapper provider). You can install another version of a package provider given that you already have one up running by:
Find-PackageProvider –Name "Nuget" -AllVersions
Install-PackageProvider -Name "Nuget" -RequiredVersion "2.8.5.201" -Force
Get-PackageProvider –ListAvailable
Import-PackageProvider –Name "Nuget" -RequiredVersion "2.8.5.201" -Verbose
Import-PackageProvider –Name MyProvider –RequiredVersion xxxx -force

Cmdlet Install-Package Install-Package Cmdlet

Esse cmdlet permite a instalação de pacotes de software em origens do pacote disponíveis usando provedores de pacote carregados.This cmdlet allows installation of software packages in available package sources using loaded package providers.

# Install a package by name.
# NuGet provider requires us to provide the dynamic parameter destination path
# when we use this provider to install. Not all providers will require you to supply
# dynamic parameters for PackageManagement cmdlets.
Install-Package -Name jquery -Source nuget.org -Destination c:\test

# Install a package by piping.
Find-Package -Name jquery –Provider NuGet | Install-Package -Destination c:\test

Cmdlet Install-PackageProviderInstall-PackageProvider Cmdlet

Este cmdlet instala um ou mais provedores de pacote do Gerenciamento de Pacotes.This cmdlet installs one or more Package Management package providers.

# Install a package provider from the PowerShell Gallery
Install-PackageProvider –Name "Gistprovider" -Verbose

# Install a specified version of a package provider
Find-PackageProvider –Name "Nuget" -AllVersions
Install-PackageProvider -Name "Nuget" -RequiredVersion "2.8.5.201" -Force

# Find a provider and install it
Find-PackageProvider –Name "Gistprovider" | Install-PackageProvider -Verbose

# Install a provider to the current user’s module folder
Install-PackageProvider –Name Gistprovider –Verbose –Scope CurrentUser

Cmdlet Register-PackageSourceRegister-PackageSource Cmdlet

Esse cmdlet adiciona uma origem do pacote para um provedor de pacote especificado.This cmdlet adds a package source for a specified package provider. Cada provedor do PackageManagement pode ter uma ou várias origens de software, ou repositórios.Each PackageManagement provider may have one or multiple software sources, or repositories. O PackageManagement fornece cmdlets do PowerShell para adicionar/remover/consultar a origem.PackageManagement provides PowerShell cmdlets to add/remove/query the source. Por exemplo, é possível registrar uma origem do pacote para o provedor do NuGet:For example, you can register a package source for the NuGet provider:

Register-PackageSource -Name "NugetSource" -Location "http://www.nuget.org/api/v2" –ProviderName nuget

Cmdlet Save-PackageSave-Package Cmdlet

Esse cmdlet salva os pacotes no computador local sem instalá-los.This cmdlet saves packages to the local computer without installing them.

# Saves jquery package to c:\test using NuGetProvider
# Notes that the -Path parameter must point to an existing location
Save-Package -Name jquery –Provider NuGet -Path c:\test

# Save a package by piping.
Find-Package -Name jquery -Source http://www.nuget.org/api/v2/ | Save-Package -Path c:\test
Find-Package -source c:\test

Cmdlet Set-PackageSourceSet-PackageSource Cmdlet

Esse cmdlet altera as informações sobre uma origem do pacote existente.This cmdlet changes information about an existing package source.

#Set-PackageSource changes the values for a source that has already been registered by running the Register-PackageSource cmdlet. By #running Set-PackageSource, you can change the source name and location.
Set-PackageSource  -Name nuget.org -Location  http://www.nuget.org/api/v2 -NewName nuget2 -NewLocation https://www.nuget.org/api/v2 

Cmdlet Uninstall-PackageUninstall-Package Cmdlet

Esse cmdlet desinstala pacotes instalados no computador local.This cmdlet uninstalls packages installed on the local computer.

# Uninstall jquery using nuget
Uninstall-Package -Name jquery –Provider NuGet -Destination c:\test

# Uninstall a package with by piping with Get-Package
Get-Package -Name jquery –Provider NuGet -Destination c:\test | Uninstall-Package

Cmdlet Unregister-PackageSourceUnregister-PackageSource Cmdlet

# Unregister a package source for the NuGet provider. You can use command Unregister-PackageSource, to disconnect with a repository, and Get-PackageSource, to discover what the repositories are associated with that provider.
Unregister-PackageSource  -Name "NugetSource"