PackageManagementというPowerShellでパッケージ管理を行うための仕組みの使い方についてです!
Widnowsにインストールするアプリを、管理する仕組みですね。
今回はプロバイダとして「ChocolateyGet」を使用しています。
最初にやること
今回は「ChocolateyGet」という、プロバイダを使用することとしました。
パッケージ管理を「ChocolateyGet」で行うために、プロバイダのインストールまで進めます。
- PowerShellを管理者権限で起動する
- Set-ExecutionPolicy RemoteSigned -Scope Process
- Set-ExecutionPolicy RemoteSignedで開放していたら不要かも
- 安全面を考慮すると開放はよくないかも
- Find-PackageProvider ChocolateyGet -verbose
- プロバイダの検索
- Install-PackageProvider ChocolateyGet -verbose
- プロバイダのインストール
質問には「[Y]はい」でOK。
-verboseパラメータ
各コマンド実行時に「対象コマンド -verbose」とすると、詳細が出力されるようになります。
-verboseなしの場合このように、結果のみ表示されます。
> Find-PackageProvider ChocolateyGet Name Version Source Summary ---- ------- ------ ------- ChocolateyGet 1.0.0.1 PSGallery An PowerShell OneGet provider that discovers pac...
しかし-verboseをつけると、このように詳細ログが表示されます。
そのため、インストールに失敗など、問題発生時につけるだけでも良いと思われます。
> Find-PackageProvider ChocolateyGet -verbose 詳細: プロバイダー 'Bootstrap' を使用してパッケージを検索しています。 詳細: Finding the package 'Bootstrap::FindPackage' 'ChocolateyGet','','','''. 詳細: プロバイダー 'PowerShellGet' を使用してパッケージを検索しています。 詳細: -Repository パラメーターが指定されていません。PowerShellGet では、すべての登録済みリポジトリが使用されます。 詳細: PackageManagement プロバイダー 'NuGet' のプロバイダー オブジェクトを取得しています。 詳細: 指定された Location は 'https://www.powershellgallery.com/api/v2'、PackageManagementProvider は 'NuGet' です。 詳細: Searching repository 'https://www.powershellgallery.com/api/v2/FindPackagesById()?id='ChocolateyGet'' for ''. 詳細: Total package yield:'1' for the specified package 'ChocolateyGet'. Name Version Source Summary ---- ------- ------ ------- ChocolateyGet 1.0.0.1 PSGallery An PowerShell OneGet provider that discovers pac...
パッケージ管理前に毎回やること
パッケージ管理をするために、まず行うことです。
これらを行ってから、次章の「パッケージ管理でやること」を行います。
- PowerShellを管理者権限で起動する
- Set-ExecutionPolicy RemoteSigned -Scope Process
- Set-ExecutionPolicy RemoteSignedで開放していたら不要かも
- 安全面を考慮すると開放はよくないかも
- Import-PackageProvider ChocolateyGet
- プロバイダの設定
ということでこの2行を叩く必要があります。
Set-ExecutionPolicy RemoteSigned -Scope Process Import-PackageProvider ChocolateyGet
パッケージ管理でやること
さて、パッケージ管理を実際にする際のコマンドです。
それぞれ用途に応じたコマンドを実行します。
質問されたら基本的に「[Y]はい」でOK。
探す
Find-Package -ProviderName ChocolateyGet -Name パッケージ名
「*」でワイルドカードを使って検索も可能
インストール
Install-Package -ProviderName ChocolateyGet -name パッケージ名
インストール済み確認
Get-Package -ProviderName ChocolateyGet
アンインストール
Uninstall-Package パッケージ名
環境
下記環境で実行しました。
> $PSVersionTable Name Value ---- ----- PSVersion 5.1.18362.628 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} BuildVersion 10.0.18362.628 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1
参考
コチラを参考にしました。ありがとうございました!
あとがき
PowerShellでパッケージ管理するときにすることリストでした!
コマンドが長ったらしくて打つのが面倒なのが玉にキズですね……