Powershell モジュールの格納フォルダ確認、自作等モジュールのインストール方法

PowerShellカテゴリを表すパンダのイラスト PowerShell

自分用のメモ

1. モジュール格納先の確認

PowerShellでインストールされているモジュールの格納フォルダを確認するには、以下のコマンドを実行します。

$env:PSModulePath -split ";"

このコマンドは、モジュールが格納されているディレクトリのリストを返します。通常、次のようなディレクトリが含まれます。

  • ユーザーモジュールフォルダ
    • 場所: C:\Users\<ユーザー名>\Documents\WindowsPowerShell\Modules
    • 使い方: ユーザー固有のモジュールを格納します。このフォルダに格納されたモジュールは、特定のユーザーによってのみ使用されます。
  • システムモジュールフォルダ
    • 場所: C:\Program Files\WindowsPowerShell\Modules
    • 使い方: すべてのユーザーがアクセス可能なモジュールを格納します。このフォルダに格納されたモジュールは、システム上のすべてのユーザーから利用可能です。
  • Windows組み込みモジュールフォルダ
    • 場所: C:\Windows\System32\WindowsPowerShell\v1.0\Modules
    • 使い方: Windowsによって提供される組み込みモジュールが格納されます。このフォルダにユーザーが手動でモジュールを追加することは稀で、主にWindowsのアップデートやインストールによって管理されます。

2. モジュールのインストール・アンインストール方法

(1)インターネット経由の場合

PowerShellギャラリーから直接モジュールをインストールする方法です。

Install-Module -Name <モジュール名>

モジュールをアンインストールするには、以下のコマンドを使用します:

Uninstall-Module -Name <モジュール名>

(2)インターネット未接続の場合(コマンド実行)

  1. モジュールをダウンロード: インターネットに接続されたPCで以下を実行:
Save-Module -Name <モジュール名> -Path <保存先>
  1. ダウンロードしたモジュールを移動: 外部ストレージにコピーし、ネット未接続のPCへ移動。
  2. モジュールをインポート: 外部ストレージからモジュールをインポート:
Import-Module -Name <保存先>\<モジュール名>

モジュールをアンインストールするには、保存先からモジュールファイルを手動で削除します。

(3)インターネット未接続の場合(Webサイトからダウンロード)

PowerShellモジュールをダウンロードするためにウェブサイトにアクセスする方法として、主に公式のソースや信頼できるリポジトリを利用することが推奨されます。以下は、その方法の一例です:

PowerShell Galleryのウェブサイトからダウンロード

  1. PowerShell GalleryにアクセスPowerShell Gallery にアクセスします。
  2. モジュールを検索: ダウンロードしたいモジュールの名前を検索バーに入力して探します。
  3. ダウンロードページからダウンロード: モジュールのページに移動し、ページ内の「Download」リンクをクリックしてモジュールを手動でダウンロードします。

ダウンロードしたモジュールのインストール

ダウンロードが完了したら、ダウンロードしたファイルを解凍し、以下のディレクトリのいずれかにコピーします:

  • ユーザーモジュールフォルダ:
    • C:\Users\<ユーザー名>\Documents\WindowsPowerShell\Modules
  • システムモジュールフォルダ:
    • C:\Program Files\WindowsPowerShell\Modules

モジュールをアンインストールするには、保存先からモジュールファイルを手動で削除します。

3. モジュールをインストールするための規則

  • PSModulePathにインストール:
    • すべてのモジュールは、PSModulePath環境変数に記載されているパスにインストールするか、環境変数の値にモジュールのパスを追加します。モジュールパスを追加する1例です。
$Env:PSModulePath
[Environment]::GetEnvironmentVariable("PSModulePath")
  • パスの追加例
$p = [Environment]::GetEnvironmentVariable("PSModulePath")
$p += ";C:\Program Files (x86)\MyCompany\Modules\"
[Environment]::SetEnvironmentVariable("PSModulePath", $p)
  • モジュールをインストールする場所:
    • 特定のユーザー用:
      • ディレクトリ: $home\Documents\WindowsPowerShell\Modules\<Module Folder>\<Module Files>
    • すべてのユーザー用:
      • ディレクトリ: $Env:ProgramFiles\WindowsPowerShell\Modules\<Module Folder>\<Module Files>
    • 製品ディレクトリFabrikamという製品を作ったとした場合):
      • 例: C:\Program Files\Fabrikam Technologies\Fabrikam Manager\Modules\Fabrikam
$p = [Environment]::GetEnvironmentVariable("PSModulePath")
$p += ";C:\Program Files\Fabrikam Technologies\Fabrikam Manager\Modules\"
[Environment]::SetEnvironmentVariable("PSModulePath", $p)

    4.趣味の手作りモジュールの場合

    手作りモジュールの場合、そこまで詳細に配置する必要はないかもしれません。特に、個人プロジェクトや限定的な用途で使用する場合の1例

    シンプルな手作りモジュールの配置

    1. ユーザーモジュールフォルダに配置:
      • 場所: C:\Users\<ユーザー名>\Documents\WindowsPowerShell\Modules
      • このディレクトリにモジュールを配置することで、特定のユーザーにとって簡単にアクセス可能にします。
    2. モジュールのインポート
      • 配置後、以下のコマンドでモジュールをインポートします Import-Module -Name <モジュール名>

    MyModuleという名前の手作りモジュールがある場合の例

    例えば、MyModuleという名前の手作りモジュールがある場合、以下のように配置して使用します:

    C:\Users\<ユーザー名>\Documents\WindowsPowerShell\Modules\MyModule
      MyModule.psm1
      MyModule.psd1

    配置後、PowerShellで以下のコマンドを実行します:

    Import-Module -Name MyModule

    これで、手作りモジュールが使用可能になります。大規模なプロジェクトや複数バージョンの管理が必要ない場合、このシンプルな方法で十分です。

    文書情報

    記事タイトル
    Powershell モジュールの格納フォルダ確認、自作等モジュールのインストール方法
    作成日
    更新日
    Source URL
    https://papanda925.com/?p=2777

    ライセンス: 本記事のうち、当サイトが権利を有する本文・自作図表は、特記なき限り CC BY 4.0 で利用できます。生成AIを活用して作成・編集した内容を含みます。コードについて、別途ライセンス表示またはリンク先GitHubリポジトリのライセンスがある場合は、その条件を優先します。引用・第三者資料・画像・商標等は本ライセンスの対象外です。 利用ポリシー

    タイトルとURLをコピーしました