Configuration Manager コマンドレットを使用した概要
Configuration Manager (現在のブランチ) に適用
Windows PowerShellを使用して、Configuration Manager階層を管理します。 PowerShell スクリプトを使用すると、WMI と C# を使用して、文書化されている他の方法と同様のConfiguration Managerを自動化または拡張できます。 詳細については、「Configuration Manager SDK」を参照してください。
Configuration Manager コンソールまたはWindows PowerShell セッションから PowerShell でConfiguration Managerコマンドレットとスクリプトを実行します。 Configuration Manager コンソールを使用してConfiguration Managerコマンドレットを実行すると、セッションはサイトのコンテキストで自動的に実行されます。
注意
現在サポートされているすべてのバージョンのConfiguration Manager現在のブランチでは、バージョン 5.1 Windows PowerShellサポートされています。 PowerShell バージョン 7 を既にインストールしている場合でも、PowerShell バージョン 5.1 を使用できます。 詳細については、「PowerShell 7 と Windows PowerShell 5.1 を同時に使用する」を参照してください。
Configuration Manager PowerShell コマンドレット ライブラリでは、PowerShell 7 がサポートされています。 詳細については、「 PowerShell バージョン 7 のサポート」を参照してください。
バージョン 2103 以降では、ConfigurationManager PowerShell モジュールには Microsoft .NET バージョン 4.7.2 以降が必要です。
Configuration Manager コンソールからの PowerShell
PowerShell を開く最も簡単な方法は、Configuration Manager コンソールから直接実行することです。
Configuration Manager コンソールを起動します。 左上隅に青い四角形があります。 青い四角形の白い矢印を選択し、Windows PowerShellでConnectを選択します。
Windows PowerShell読み込んだ後、サイト コードを含むプロンプトが表示されます。 たとえば、サイト コードが "ABC" の場合、プロンプトは次のようになります。
PS ABC:\>動作を確認するには、 Get-CMSite コマンドレットを使用します。 このコマンドレットは、現在接続しているConfiguration Manager サイトと子サイトに関する情報を返します。 たとえば、サイト サーバー名、インストール ディレクトリ、サイト名、バージョンなどです。
注意
Configuration Manager コンソールから PowerShell または PowerShell ISE を起動すると、プロセス スコープに AllSigned 実行ポリシーが使用されます。 この既定のセキュリティで保護された構成が環境に対して多すぎる場合は、それを回避するための 2 つのオプションがあります。
- 次の例のようなコマンドを使用して実行ポリシーを変更します。
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process - Configuration Manager PowerShell モジュールをインポートします。
Configuration Manager PowerShell モジュールをインポートする
Configuration Manager モジュールを手動で読み込むことで、既存のWindows PowerShell セッションからConfiguration Manager Connect。
スタート メニューからWindows PowerShell セッションを開きます。
Import-Module コマンドレットを使用して、Configuration Manager モジュールをインポートします。 Configuration Manager モジュールへのパスを指定するか、モジュールを含むディレクトリに変更します。 既定では、モジュールは次のパスにあります。
C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\ConfigurationManager.psd1バージョン 2111 以降では、Configuration Manager コンソールをインストールすると、モジュールへのパスがシステム環境変数 PSModulePath に追加されます。 詳細については、「 about_PSModulePath」を参照してください。 この変更により、モジュールの名前だけでモジュールをインポートできます。
Import-Module ConfigurationManager重要
別のフォルダーに存在する可能性がある古いバージョンのモジュールをインポートしないようにしてください。 モジュールをインポートした後、次のコマンドを使用してモジュールのバージョンとパスを確認します。
(Get-Module -Name ConfigurationManager).Version (Get-Module -Name ConfigurationManager).Path次の例では、モジュールのディレクトリに変更を加え、インポートします。
Set-Location 'C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin' Import-Module .\ConfigurationManager.psd1ヒント
SMS_ADMIN_UI_PATH環境変数を使用することもできます。 例:
Set-Location "$env:SMS_ADMIN_UI_PATH\..\"また、 cd エイリアスを使用して 、Set-Location コマンドレットの代わりにディレクトリを変更することもできます。
このコンピューターでConfiguration Manager モジュールを初めてインポートする場合は、サイト ドライブの作成が必要になる場合があります。 例:
New-PSDrive -Name "ABC" -PSProvider "CMSite" -Root "siteserver.contoso.com" -Description "Primary site"ヒント
本体から PowerShell を起動すると、現在接続されているサイトの利便性として PSDrive が自動的に作成されます。 階層内の場合は、 New-PSDrive を使用して各サイトのドライブを作成します。
Configuration Manager コマンドレットを実行するには、Configuration Manager サイトへのパスを切り替える必要があります。 次の例では、サイト コードは次のとおりです
ABC。Set-Location ABC:Get-CMSite コマンドレットを使用して、PowerShell がConfiguration Manager モジュールを正しく読み込んだことを確認します。
ヘルプを更新する
Configuration Manager PowerShell モジュールの最新情報を取得するには、Update-Help コマンドレットを使用します。 このコンテンツは、 ConfigurationManager モジュールの docs.microsoft.com で公開されているものと同じです。
重要
バージョン 2103 のリリースで更新可能なコンテンツの構造と公開方法が変更されたため、バージョン 2010 サイトで Update-Help を使用しないでください。 サイトをバージョン 2103 以降に更新し、ローカル ヘルプ コンテンツを更新します。
詳細については、 PowerShell バージョン 2103 のリリース ノートを参照してください。
このコマンドレットを実行するコンピューターには、特に pshelpprod.blob.core.windows.netインターネット アクセスが必要です。 次に、管理者特権の PowerShell セッションから次のコマンドを実行します。
Update-Help -Module ConfigurationManager
Configuration Manager コマンドレットのヘルプを更新した後は、Get-Help コマンドレットを使用してコマンドレットに関するヘルプを入手できます。 例:
Get-Help Get-CMDevice
Get-Help Get-CMDevice -Examples
Get-Help Get-CMDevice -Parameter *
詳細については、次の PowerShell ブログ投稿を参照してください。 ヘルプが表示されます。
共通パラメーター
すべてのConfiguration Managerコマンドレットは、一般的な PowerShell パラメーターをサポートしています。
- デバッグ
- ErrorAction
- ErrorVariable
- InformationAction
- InformationVariable
- OutVariable
- OutBuffer
- PipelineVariable
- 詳細
- WarningAction
- WarningVariable
詳細については、「about_CommonParameters」を参照してください。
PowerShell バージョン 7 のサポート
Configuration Manager PowerShell コマンドレット ライブラリでは、PowerShell バージョン 7 がサポートされています。 PowerShell 7 をダウンロードしてインストールする方法の詳細については、「Windowsに PowerShell をインストールする」を参照してください。
ヒント
PowerShell 7 は次のように pwsh.exe実行されます。 以前のバージョンの PowerShell は、次のように powershell.exe実行されます。
PowerShell バージョン 7 をサポートしていないコマンドレット
次のコマンドレットでは、PowerShell 7 はサポートされていません。
- Import-CMPackage
- Import-CMDriverPackage
- Import-CMTaskSequence
- Export-CMPackage
- Export-CMDriverPackage
- Export-CMTaskSequence
- Add-CMReportingServicePoint
- Get-CMReportingServicePoint
- Remove-CMReportingServicePoint
- Set-CMReportingServicePoint
PowerShell バージョン 7 で使用される .NET Core ではなく、.NET Frameworkが必要です。
バージョン 2103 以降では、PowerShell バージョン 7 セッションでこれらのコマンドレットを使用しようとすると、次のエラーで失敗します。 This cmdlet only supports the ".NET Framework" runtime.
PowerShell バージョン 7 に関する既知の問題
Configuration Manager コンソールから直接 PowerShell 7 を起動することはできません。 PowerShell 7 を手動で起動し、Configuration Manager モジュールをインポートします。
現在のサポートは、Configuration Manager コマンドレットに対してのみ行います。 PowerShell に依存するConfiguration Managerのその他の機能は、バージョン 7 をサポートしていない可能性があります。 たとえば、 スクリプトの実行、 CMPivot、 PowerShell スクリプトの実行 タスク シーケンスステップなどです。
PowerShell のフィードバック
Configuration Manager PowerShell コマンドレットに関するフィードバックがある場合は、Configuration Manager コンソールで同じオプションを使用してフィードバックを送信します。 詳細については、「 製品のフィードバック」を参照してください。
しかめ面を送信する場合は、PowerShell に固有の次の追加情報を含めます。
Microsoft が問題の再現を試みることができるように使用した正確なスクリプトまたはコマンド構文。
実際の動作と比較して期待した動作。
Verbose 共通パラメーターを使用して実行するときの完全な出力。
ConfigurationManager モジュールのバージョンとパス。 たとえば、次のコマンドの出力を含めます。
(Get-Module -Name ConfigurationManager).Version (Get-Module -Name ConfigurationManager).Pathコマンドレットがエラーを返す場合は、次のコマンドを使用して例外の詳細を取得します。
$Error[0].Exception | Format-List * -Force
リリース ノートのプレビュー
コア ドキュメント ライブラリのテクニカル プレビュー機能に関する記事には、PowerShell のリリース ノートが含まれています。 たとえば、 Technical Preview バージョン 2202 を参照してください。
次のステップ
最新リリースのConfiguration Managerで変更された内容の詳細については、目次から最新のリリース ノートを選択してください。
個々のコマンドレットの詳細については、Configuration Managerコマンドレットリファレンスを参照してください。
Windows PowerShellの学習と使用の詳細については、「PowerShell 101」を参照してください。