PackageManagement コマンドレットPackageManagement Cmdlets

これは、ソフトウェアの検出、インストール、およびインベントリ (SDII) をサポートする PackageManagement の中核となります。This is the core of PackageManagement to support software discovery, installation, and inventory (SDII). 次の操作のコマンドレットを試してください。Try out the cmdlets for these operations:

  • Find-Package
  • Find-PackageProvider
  • Get-Package
  • Get-PackageProvider
  • Get-PackageSource
  • Import-PackageProvider
  • Install-Package
  • Install-PackageProvider
  • Register-PackageSource
  • Save-Package
  • Set-PackageSource
  • Uninstall-Package
  • Unregister-PackageSource

PackageManagement は PowerShell モジュールであるため、次のことを行って PackageManagement 自体を更新できます。As PackageManagement is a PowerShell module, you can do the following to update PackageManagement itself:

Install-Module PackageManagement –Force

この場合、PowerShell セッションを再入力して、PackageManagement の新しいバージョンに切り替える必要があります。In this case, you will have to re-enter PowerShell session to switch to the new version of PackageManagement.

Find-Package コマンドレットFind-Package Cmdlet

このコマンドレットでは、読み込まれたパッケージ プロバイダーを使用して、利用可能なパッケージ ソース内のソフトウェア パッケージを検出できます。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 -ProviderName PowerShellGet -Source as source
Find-Package -Name jquery –Provider NuGet -Source

# Find package with name and version
# Here we are assuming that the user already registered 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

Find-PackageProvider コマンドレットFind-PackageProvider Cmdlet

Find-PackageProvider コマンドレットは、PowerShellGet に登録されているパッケージ ソースで利用できる、一致する PackageManagement プロバイダーを検索します。The Find-PackageProvider cmdlet finds matching PackageManagement providers that are available in package sources registered with PowerShellGet. これらは、Install-PackageProvider コマンドレットを使用したインストールに使用可能なパッケージ プロバイダーです。These are package providers available for installation with the Install-PackageProvider cmdlet. 既定では、これには 'PackageManagement' および 'Provider' タグの付いた PowerShell ギャラリーで利用できるモジュールが含まれます。By default, this includes modules available in the PowerShell Gallery with the 'PackageManagement' and 'Provider' Tags.

Find-PackageProvider は、PackageManagement Azure BLOB ストアで利用できる一致する PackageManagement プロバイダーも検索します。このストアでは、これらを検索しインストールするために PackageManagement boostrapper プロバイダーを使用します。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

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

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

Get-Package コマンドレットGet-Package Cmdlet

このコマンドレットは、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

Get-PackageProvider コマンドレットGet-PackageProvider 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

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

Get-PackageSource コマンドレットGet-PackageSource Cmdlet

このコマンドレットは、パッケージ プロバイダーに登録されているパッケージ ソースの一覧を取得します。This cmdlet gets a list of package sources that are registered for a package provider.

# Get all package sources

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

Import-PackageProvider コマンドレットImport-PackageProvider Cmdlet

このコマンドレットは、PackageManagement パッケージ プロバイダーを現在のセッションに追加します。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:
 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 "" -Force
Get-PackageProvider –ListAvailable
Import-PackageProvider –Name "Nuget" -RequiredVersion "" -Verbose
Import-PackageProvider –Name MyProvider –RequiredVersion xxxx -force

Install-Package コマンドレットInstall-Package Cmdlet

このコマンドレットでは、読み込まれたパッケージ プロバイダーを使用して、利用可能なパッケージ ソース内のソフトウェア パッケージをインストールできます。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 -Destination c:\test

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

Install-PackageProvider コマンドレットInstall-PackageProvider Cmdlet

このコマンドレットは、1 つ以上の PackageManagement パッケージ プロバイダーをインストールします。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 "" -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

Register-PackageSource コマンドレットRegister-PackageSource Cmdlet

このコマンドレットは、指定したパッケージ プロバイダーのパッケージ ソースを追加します。This cmdlet adds a package source for a specified package provider. 各 PackageManagement プロバイダーには、1 つまたは複数のソフトウェア ソースまたはリポジトリがある場合があります。Each PackageManagement provider may have one or multiple software sources, or repositories. PackageManagement は、ソースを追加/削除/照会する PowerShell コマンドレットを提供します。PackageManagement provides PowerShell cmdlets to add/remove/query the source. たとえば、NuGet プロバイダーのパッケージ ソースを登録できます。For example, you can register a package source for the NuGet provider:

Register-PackageSource -Name "NugetSource" -Location "" –ProviderName nuget

Save-Package コマンドレットSave-Package Cmdlet

このコマンドレットは、パッケージをインストールせずにローカル コンピューターに保存します。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 | Save-Package -Path c:\test
Find-Package -Source c:\test

Set-PackageSource コマンドレットSet-PackageSource Cmdlet

このコマンドレットは、既存のパッケージ ソースに関する情報を変更します。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 -Location -NewName nuget2 -NewLocation

Uninstall-Package コマンドレットUninstall-Package Cmdlet

このコマンドレットは、ローカル コンピューターにインストールされているパッケージをアンインストールします。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

Unregister-PackageSource コマンドレットUnregister-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"