😢
PnP PowerShellコマンドを実行できない時に確認すること
記事概要
PnP PowerShellコマンドレットを実行できない時の確認事項を、操作数の多いものから4つの観点でまとめた。
本記事の対象
- PnP PowerShellコマンドレットが動かない原因を絞り込んで、なるはやで動かしたい方
PowerShellのバージョンが7.2以上であること
下記の自動変数でPowerShellのバージョンを確認する。
$PSVersionTable
PowerShell 7.2以上がインストールされていない場合は手動でPowerShell 7をインストールする必要がある。主なインストール方法を記載する。
Windowsでコマンドからインストールする
Microsoftが推奨する方法で、Windows環境にインストールするコマンドを入力する。
winget search Microsoft.PowerShell
インストールパッケージをWebからダウンロードする
OSがWindowsでない場合、Githubからインストールパッケージをダウンロードする。
PowerShell 7でコマンドレットを実行していること
PowerShell 7はside-by-side環境となり、以前のバージョンと共存する。
既存のWindows PowerShellで実行を試みても実行できないので、下記の方法いずれかで実行環境をPowerShell 7に変更して実行する。
- PowerShell 7のCUIを起動する
- ターミナルのシェルをPowerShell 7に変更する
PowerShell 7環境に最新版のPnP PowerShellがインストールされていること
既定の設定では、既存のWindows PowerShellとPowerShell 7は異なる場所にモジュールが配置されるため、既にWindows PowerShellにPnP PowerShellをインストールしていても、PowerShell 7にモジュールを再度インストールする必要がある。
また、コマンドレットの種類によっては最新版のモジュールを推奨されるため、下記のコマンドで最新版のモジュールをインストールする。
Install-Module PnP.PowerShell -force
Import-Moduleコマンドレットを実行していること
PnP PowerShellコマンドレットを実行する前に、モジュールにアクセスできるよう、下記コマンドレットでPnP PowerShellを読み込む必要がある。
Import-Module -Name PnP.PowerShell
Discussion