about_PackageManagement
簡単な説明
PackageManagement は、ソフトウェア パッケージ マネージャーのアグリゲーターです。
詳細な説明
PackageManagement 機能は、Windows PowerShell 5.0 で導入されました。
PackageManagement は、ソフトウェア パッケージ管理システムの統合インターフェイスです。PackageManagement コマンドレットを実行して、ソフトウェアの検出、インストール、およびインベントリ (SDII) タスクを実行できます。 基になるインストール テクノロジに関係なく、PackageManagement モジュールで共通のコマンドレットを実行して、パッケージを検索、インストール、またはアンインストールできます。パッケージ リポジトリを追加、削除、クエリする。コンピューターでクエリを実行して、インストールされているソフトウェア パッケージを特定します。
PackageManagement は、他のソフトウェア パッケージ管理システムのサポートを可能にする柔軟なプラグイン モデルをサポートします。
PackageManagement モジュールは、Windows PowerShell 5.0 以降の PowerShell リリースに含まれており、パッケージプロバイダー、パッケージ ソース、パッケージ自体の 3 つのレベルのパッケージ管理構造で動作します。 いくつかの用語を定義しましょう。
- パッケージ マネージャー: ソフトウェア パッケージ管理システム。 PackageManagement の用語では、これはパッケージ プロバイダーです。
- パッケージ プロバイダー: パッケージ マネージャーの PackageManagement 用語。 たとえば、Windows インストーラー、Chocolatey などです。
- パッケージ ソース: リポジトリとして使用するようにパッケージ プロバイダーを構成する URL、ローカル フォルダー、またはネットワーク共有フォルダー。
- パッケージ: パッケージ プロバイダーが管理し、特定のパッケージ ソースに格納されるソフトウェアの一部。
PackageManagement モジュールには、次のコマンドレットが含まれています。 詳細については、 PackageManagement ヘルプを参照してください。
Get-PackageProvider
: PackageManagement に接続されているパッケージ プロバイダーの一覧を返します。Get-PackageSource
: パッケージ プロバイダーに登録されているパッケージ ソースの一覧を取得します。Register-PackageSource
: 指定したパッケージ プロバイダーのパッケージ ソースを追加します。Set-PackageSource
: 既存のパッケージ ソースのプロパティを設定します。Unregister-PackageSource
: 登録済みのパッケージ ソースを削除します。Get-Package
: インストールされているソフトウェア パッケージの一覧を返します。Find-Package
: 使用可能なパッケージ ソース内のソフトウェア パッケージを検索します。Install-Package
: 1 つ以上のソフトウェア パッケージをインストールします。Save-Package
: パッケージをインストールせずにローカル コンピューターに保存します。Uninstall-Package
: 1 つ以上のソフトウェア パッケージをアンインストールします。
パッケージ プロバイダーのブートストラップと動的コマンドレットパラメーター
既定では、PackageManagement にはコア ブートストラップ プロバイダーが付属しています。 必要に応じて、プロバイダーをブートストラップすることで、追加のパッケージ プロバイダーをインストールできます。つまり、Web サービスからプロバイダーを自動的にインストールするためのプロンプトに応答します。 PackageManagement コマンドレットを使用してパッケージ プロバイダーを指定できます。指定したプロバイダーが使用できない場合、PackageManagement はプロバイダーをブートストラップ (または自動的にインストール) するように求められます。 次の例では、Chocolatey プロバイダーがまだインストールされていない場合、PackageManagement ブートストラップによってプロバイダーがインストールされます。
Find-Package -Provider Chocolatey <PackageName>
Chocolatey プロバイダーがまだインストールされていない場合は、上記のコマンドを実行すると、インストールするように求められます。
Install-Package <Chocolatey package Name> -ForceBootstrap
Chocolatey プロバイダーがまだインストールされていない場合は、上記のコマンドを実行すると、プロバイダーがインストールされます。ただし、ForceBootstrap パラメーターがコマンドに追加されているため、インストールを求めるメッセージは表示されません。プロバイダーとパッケージの両方が自動的にインストールされます。
パッケージをインストールしようとすると、サポート プロバイダーがまだインストールされておらず、ForceBootstrap パラメーターをコマンドに追加しない場合は、PackageManagement によってプロバイダーのインストールが求められます。
PackageManagement コマンドでパッケージ プロバイダーを指定すると、そのパッケージ プロバイダーに固有の動的パラメーターを使用できるようになります。 特定の PackageManagement コマンドレットに対して Get-Help を実行すると、パラメーター セットの一覧が返され、使用可能なパッケージ プロバイダーの動的パラメーターが個別のパラメーター セットにグループ化されます。
PackageManagement プロジェクトの詳細
PackageManagement パッケージ プロバイダーの作成方法など、PackageManagement オープン開発プロジェクトの詳細については、 https://oneget.org の GitHub の PackageManagement プロジェクトを参照してください。
関連項目
PowerShell