New-ModuleManifest
新しいモジュール マニフェストを作成します。
構文
New-ModuleManifest
[-Path] <string>
[-NestedModules <Object[]>]
[-Guid <guid>]
[-Author <string>]
[-CompanyName <string>]
[-Copyright <string>]
[-RootModule <string>]
[-ModuleVersion <version>]
[-Description <string>]
[-ProcessorArchitecture <ProcessorArchitecture>]
[-PowerShellVersion <version>]
[-ClrVersion <version>]
[-DotNetFrameworkVersion <version>]
[-PowerShellHostName <string>]
[-PowerShellHostVersion <version>]
[-RequiredModules <Object[]>]
[-TypesToProcess <string[]>]
[-FormatsToProcess <string[]>]
[-ScriptsToProcess <string[]>]
[-RequiredAssemblies <string[]>]
[-FileList <string[]>]
[-ModuleList <Object[]>]
[-FunctionsToExport <string[]>]
[-AliasesToExport <string[]>]
[-VariablesToExport <string[]>]
[-CmdletsToExport <string[]>]
[-DscResourcesToExport <string[]>]
[-CompatiblePSEditions <string[]>]
[-PrivateData <Object>]
[-Tags <string[]>]
[-ProjectUri <uri>]
[-LicenseUri <uri>]
[-IconUri <uri>]
[-ReleaseNotes <string>]
[-HelpInfoUri <string>]
[-PassThru]
[-DefaultCommandPrefix <string>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
New-ModuleManifest
コマンドレットは、新しいモジュール マニフェスト (.psd1
) ファイルを作成し、その値を設定し、マニフェスト ファイルを指定したパスに保存します。
モジュールの作成者は、このコマンドレットを使用して、モジュールのマニフェストを作成します。 モジュール マニフェストは、ハッシュ テーブルを含む .psd1
ファイルです。 モジュールの内容や属性について説明するハッシュ テーブル内のキーと値が、前提条件を定義し、コンポーネントの処理方法を決定します。 マニフェストは、モジュールには必要ありません。
New-ModuleManifest
では、一般的に使用されるすべてのマニフェスト キーを含むマニフェストが作成されるため、既定の出力をマニフェスト テンプレートとして使用できます。 値を追加または変更したり、このコマンドレットで追加しないモジュール キーを追加したりするには、結果のファイルをテキスト エディターで開きます。
Path および PassThru を除く各パラメーターは、モジュール マニフェスト キーとその値を作成します。
モジュール マニフェストでは、 ModuleVersion キーのみが必要です。 パラメーターの説明で指定しない限り、コマンドからパラメーターを省略した場合、 New-ModuleManifest
は、影響を与えない関連する値のコメント文字列を作成します。
PowerShell 2.0 では、 New-ModuleManifest
は、コマンドで指定されていない一般的に使用されるパラメーターの値と、必要なパラメーター値の入力を求められます。 PowerShell 3.0 以降では、必要なパラメーター値が指定されていない場合にのみ、 New-ModuleManifest
プロンプトが表示されます。
PowerShell ギャラリーでモジュールを発行する予定の場合は、マニフェストに特定のプロパティの値を含める必要があります。 詳細については、ギャラリードキュメントのPowerShell ギャラリーに公開されたアイテムの必要なメタデータを参照してください。
例
例 1 - 新しいモジュール マニフェストを作成する
この例では、 Path パラメーターで指定されたファイルに新しいモジュール マニフェストを作成します。 PassThru パラメーターは、パイプラインとファイルに出力を送信します。
出力は、マニフェスト内のすべてのキーの既定値を示しています。
New-ModuleManifest -Path C:\ps-test\Test-Module\Test-Module.psd1 -PassThru
#
# Module manifest for module 'Test-Module'
#
# Generated by: ContosoAdmin
#
# Generated on: 1/22/2019
#
@{
# Script module or binary module file associated with this manifest.
# RootModule = ''
# Version number of this module.
ModuleVersion = '1.0'
# Supported PSEditions
# CompatiblePSEditions = @()
# ID used to uniquely identify this module
GUID = '47179120-0bcb-4f14-8d80-f4560107f85c'
# Author of this module
Author = 'ContosoAdmin'
# Company or vendor of this module
CompanyName = 'Unknown'
# Copyright statement for this module
Copyright = '(c) 2019 ContosoAdmin. All rights reserved.'
# Description of the functionality provided by this module
# Description = ''
# Minimum version of the Windows PowerShell engine required by this module
# PowerShellVersion = ''
# Name of the Windows PowerShell host required by this module
# PowerShellHostName = ''
# Minimum version of the Windows PowerShell host required by this module
# PowerShellHostVersion = ''
# Minimum version of Microsoft .NET Framework required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# DotNetFrameworkVersion = ''
# Minimum version of the common language runtime (CLR) required by this module. This prerequisite is valid for the PowerShell Desktop edition only.
# CLRVersion = ''
# Processor architecture (None, X86, Amd64) required by this module
# ProcessorArchitecture = ''
# Modules that must be imported into the global environment prior to importing this module
# RequiredModules = @()
# Assemblies that must be loaded prior to importing this module
# RequiredAssemblies = @()
# Script files (.ps1) that are run in the caller's environment prior to importing this module.
# ScriptsToProcess = @()
# Type files (.ps1xml) to be loaded when importing this module
# TypesToProcess = @()
# Format files (.ps1xml) to be loaded when importing this module
# FormatsToProcess = @()
# Modules to import as nested modules of the module specified in RootModule/ModuleToProcess
# NestedModules = @()
# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
FunctionsToExport = @()
# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
CmdletsToExport = @()
# Variables to export from this module
VariablesToExport = '*'
# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
AliasesToExport = @()
# DSC resources to export from this module
# DscResourcesToExport = @()
# List of all modules packaged with this module
# ModuleList = @()
# List of all files packaged with this module
# FileList = @()
# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
PrivateData = @{
PSData = @{
# Tags applied to this module. These help with module discovery in online galleries.
# Tags = @()
# A URL to the license for this module.
# LicenseUri = ''
# A URL to the main website for this project.
# ProjectUri = ''
# A URL to an icon representing this module.
# IconUri = ''
# ReleaseNotes of this module
# ReleaseNotes = ''
} # End of PSData hashtable
} # End of PrivateData hashtable
# HelpInfo URI of this module
# HelpInfoURI = ''
# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
# DefaultCommandPrefix = ''
}
例 2 - 事前設定された設定を使用して新しいマニフェストを作成する
この例では、新しいモジュール マニフェストを作成します。 PowerShellVersion パラメーターと AliasesToExport パラメーターを使用して、対応するマニフェスト キーに値を追加します。
$moduleSettings = @{
PowerShellVersion = 1.0
Path = 'C:\ps-test\ManifestTest.psd1'
AliasesToExport = @(
'JKBC'
'DRC'
'TAC'
)
}
New-ModuleManifest @moduleSettings
例 3 - 他のモジュールを必要とするマニフェストを作成する
この例では、文字列形式を使用して、 BitsTransfer モジュールの名前とハッシュ テーブル形式を使用して、名前、 GUID、および PSScheduledJob モジュールのバージョンを指定します。
$moduleSettings = @{
RequiredModules = ("BitsTransfer", @{
ModuleName="PSScheduledJob"
ModuleVersion="1.0.0.0";
GUID="50cdb55f-5ab7-489f-9e94-4ec21ff51e59"
})
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
この例では、 ModuleList、 RequiredModules、および NestedModules パラメーターの文字列とハッシュ テーブルの形式を使用する方法を示します。 同じパラメーター値に、文字列とハッシュ テーブルを組み合わせることができます。
例 4 - 更新可能なヘルプをサポートするマニフェストを作成する
この例では、 HelpInfoUri パラメーターを使用して、モジュール マニフェストに HelpInfoUri キーを作成します。 パラメーターとキーの値は、 http または https で始まる必要があります。 この値は、モジュールの HelpInfo XML 更新可能なヘルプの情報ファイルを検索するための更新可能なヘルプ システムを示しています。
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
更新可能なヘルプについては、「 about_Updatable_Help」を参照してください。 HelpInfo XML ファイルの詳細については、「 更新可能なヘルプのサポートを参照してください。
例 5 - モジュール情報の取得
この例では、モジュールの構成値を取得する方法を示します。 モジュール マニフェストの値は、モジュール オブジェクトのプロパティの値に反映されます。
Get-Module
コマンドレットは、List パラメーターを使用して Microsoft.PowerShell.Diagnostics モジュールを取得するために使用されます。 このコマンドはモジュールを Format-List
コマンドレットに送信して、モジュール オブジェクトのすべてのプロパティと値を表示します。
Get-Module Microsoft.PowerShell.Diagnostics -List | Format-List -Property *
LogPipelineExecutionDetails : False
Name : Microsoft.PowerShell.Diagnostics
Path : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics\Micro
soft.PowerShell.Diagnostics.psd1
Definition :
Description :
Guid : ca046f10-ca64-4740-8ff9-2565dba61a4f
HelpInfoUri : https://go.microsoft.com/fwlink/?LinkID=210596
ModuleBase : C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Diagnostics
PrivateData :
Version : 3.0.0.0
ModuleType : Manifest
Author : Microsoft Corporation
AccessMode : ReadWrite
ClrVersion : 4.0
CompanyName : Microsoft Corporation
Copyright : Microsoft Corporation. All rights reserved.
DotNetFrameworkVersion :
ExportedFunctions : {}
ExportedCmdlets : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
Import-Counter], [Export-Counter, Export-Counter]...}
ExportedCommands : {[Get-WinEvent, Get-WinEvent], [Get-Counter, Get-Counter], [Import-Counter,
Import-Counter], [Export-Counter, Export-Counter]...}
FileList : {}
ModuleList : {}
NestedModules : {}
PowerShellHostName :
PowerShellHostVersion :
PowerShellVersion : 3.0
ProcessorArchitecture : None
Scripts : {}
RequiredAssemblies : {}
RequiredModules : {}
RootModule :
ExportedVariables : {}
ExportedAliases : {}
ExportedWorkflows : {}
SessionState :
OnRemove :
ExportedFormatFiles : {C:\Windows\system32\WindowsPowerShell\v1.0\Event.format.ps1xml,
C:\Windows\system32\WindowsPowerShell\v1.0\Diagnostics.format.ps1xml}
ExportedTypeFiles : {C:\Windows\system32\WindowsPowerShell\v1.0\GetEvent.types.ps1xml}
パラメーター
-AliasesToExport
モジュールがエクスポートするエイリアスを指定します。 ワイルドカードを使用できます。
このパラメーターを使用して、モジュールによってエクスポートされるエイリアスを制限できます。 エクスポートされたエイリアスの一覧からエイリアスを削除できますが、一覧にエイリアスを追加することはできません。
このパラメーターを省略 New-ModuleManifest
、 AliasesToExport キーの値が *
(all) になります。つまり、モジュールで定義されているすべてのエイリアスがマニフェストによってエクスポートされます。
型: | String[] |
配置: | Named |
規定値: | * (all) |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-Author
モジュールの作成者を指定します。
このパラメーターを省略 New-ModuleManifest
、現在のユーザーの名前を持つ Author キーが作成されます。
型: | String |
配置: | Named |
規定値: | Name of the current user |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ClrVersion
モジュールに必要な、Microsoft .NET Framework の共通言語ランタイム (CLR) の最低限のバージョンを指定します。
Note
この設定は、Windows PowerShell 5.1 などの PowerShell Desktop エディションでのみ有効であり、4.5 未満の .NET Framework バージョンにのみ適用されます。 この要件は、新しいバージョンの PowerShell または .NET Framework には影響しません。
型: | Version |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CmdletsToExport
モジュールがエクスポートするコマンドレットを指定します。 ワイルドカードを使用できます。
このパラメーターを使用して、モジュールによってエクスポートされるコマンドレットを制限できます。 エクスポートされたコマンドレットの一覧からコマンドレットを削除できますが、一覧にコマンドレットを追加することはできません。
このパラメーターを省略 New-ModuleManifest
、 CmdletsToExport キーの値が *
(all) になります。つまり、モジュールで定義されているすべてのコマンドレットがマニフェストによってエクスポートされます。
型: | String[] |
配置: | Named |
規定値: | * (all) |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-CompanyName
モジュールを作成した企業またはベンダーを識別します。
このパラメーターを省略 New-ModuleManifest
、値が "Unknown" の CompanyName キーが作成されます。
型: | String |
配置: | Named |
規定値: | "Unknown" |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-CompatiblePSEditions
モジュールの互換性のある PSEdition を指定します。 PSEdition の詳細については、「 Modules with compatible PowerShell Editionsを参照してください。
型: | String[] |
指定可能な値: | Desktop, Core |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Copyright
モジュールの著作権表記を指定します。
このパラメーターを省略すると、New-ModuleManifest
Copyright キーが作成され、(c) <year> <username>. All rights reserved.
値が現在の年で、<year>
<username>
が Author キーの値であるが作成されます。
型: | String |
配置: | Named |
規定値: | (c) <year> <username>. All rights reserved. |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DefaultCommandPrefix
セッションにインポートされるときにモジュール内のすべてのコマンドの名詞の前に付加されるプレフィックスを指定します。 プレフィックス文字列を入力します。 プレフィックスは、ユーザーのセッションでのコマンド名の競合を防ぎます。
モジュール ユーザーは、Import-Module
コマンドレットの Prefix パラメーターを指定することで、このプレフィックスをオーバーライドできます。
このパラメーターは PowerShell 3.0 で導入されました。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Description
モジュールの内容について説明します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DotNetFrameworkVersion
モジュールに必要な、Microsoft .NET Framework の最低限のバージョンを指定します。
Note
この設定は、Windows PowerShell 5.1 などの PowerShell Desktop エディションでのみ有効であり、4.5 未満の .NET Framework バージョンにのみ適用されます。 この要件は、新しいバージョンの PowerShell または .NET Framework には影響しません。
型: | Version |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DscResourcesToExport
モジュールがエクスポートする Desired State Configuration (DSC) リソースを指定します。 ワイルドカードを使用できます。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-FileList
モジュールに含まれているすべての項目を指定します。
このキーは、モジュール インベントリとしての動作を想定して設計されています。 キーに一覧表示されているファイルは、モジュールが発行されるときに含まれますが、関数は自動的にエクスポートされません。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FormatsToProcess
モジュールのインポート時に実行される書式設定ファイル (.ps1xml
) を指定します。
モジュールをインポートすると、PowerShell は指定されたファイルを使用して Update-FormatData
コマンドレットを実行します。
フォーマット ファイルはスコープ設定されていないため、セッション内のすべてのセッション状態に影響します。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FunctionsToExport
モジュールがエクスポートする関数を指定します。 ワイルドカードを使用できます。
このパラメーターを使用して、モジュールによってエクスポートされる関数を制限できます。 エクスポートされたエイリアスの一覧から関数を削除できますが、リストに関数を追加することはできません。
このパラメーターを省略 New-ModuleManifest
、 FunctionsToExport キーの値が *
(all) になります。つまり、モジュールで定義されているすべての関数がマニフェストによってエクスポートされます。
型: | String[] |
配置: | Named |
規定値: | * (all) |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-Guid
モジュールの一意の識別子を指定します。 GUIDを使用して、同じ名前のモジュールを区別できます。
このパラメーターを省略すると、 New-ModuleManifest
マニフェストに GUID キーが作成され、値の GUID が生成されます。
PowerShell で新しい GUID を作成するには、「 [guid]::NewGuid()
」と入力します。
型: | Guid |
配置: | Named |
規定値: | A GUID generated for the module |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-HelpInfoUri
モジュールの HelpInfo XML ファイルのインターネット アドレスを指定します。 http または https で始まる URI (Uniform Resource Identifier) を入力します。
HelpInfo XML ファイルは、PowerShell 3.0 で導入された更新可能なヘルプ機能をサポートしています。 これには、モジュールのダウンロード可能なヘルプ ファイルの場所、およびサポートされている各ロケールの最新のヘルプ ファイルのバージョン番号に関する情報が含まれます。
更新可能なヘルプについては、「 about_Updatable_Help」を参照してください。 HelpInfo XML ファイルの詳細については、「 更新可能なヘルプのサポートを参照してください。
このパラメーターは PowerShell 3.0 で導入されました。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-IconUri
モジュールのアイコンの URL を指定します。 指定したアイコンが、モジュールのギャラリー Web ページに表示されます。
型: | Uri |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-LicenseUri
モジュールのライセンス条項の URL を指定します。
型: | Uri |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ModuleList
このモジュールに含まれているすべてのモジュールを一覧表示します。
各モジュール名を文字列またはハッシュ テーブルとして入力し、 ModuleName および ModuleVersion キーを使用します。 ハッシュ テーブルには、省略可能な GUID キーを指定することもできます。 パラメーター値として文字列とハッシュ テーブルを組み合わせることができます。
このキーは、モジュール インベントリとしての動作を想定して設計されています。 このキーの値に一覧表示されているモジュールは自動的に処理されません。
型: | Object[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ModuleVersion
モジュールのバージョンを指定します。
このパラメーターは必須ではありませんが、マニフェストには ModuleVersion キーが必要です。 このパラメーターを省略すると、 New-ModuleManifest
値が 1.0 の ModuleVersion キーが作成されます。
型: | Version |
配置: | Named |
規定値: | 1.0 |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-NestedModules
モジュールのセッション状態にインポートされるスクリプト モジュール (.psm1
) とバイナリ モジュール (.dll
) を指定します。 NestedModules キー内のファイルは、値に一覧表示されている順序で実行されます。
各モジュール名を文字列またはハッシュ テーブルとして入力し、 ModuleName および ModuleVersion キーを使用します。 ハッシュ テーブルには、省略可能な GUID キーを指定することもできます。 パラメーター値として文字列とハッシュ テーブルを組み合わせることができます。
通常、入れ子になったモジュールには、ルート モジュールが内部処理のために必要とするコマンドが含まれています。
既定では、入れ子になったモジュール内のコマンドはモジュールのセッション状態から呼び出し元のセッション状態にエクスポートされますが、ルート モジュールはエクスポートするコマンドを制限できます。 たとえば、 Export-ModuleMember
コマンドを使用します。
モジュール セッション状態の入れ子になったモジュールはルート モジュールで使用できますが、呼び出し元のセッション状態の Get-Module
コマンドからは返されません。
NestedModules キーにリストされているスクリプト (.ps1
) は、呼び出し元のセッション状態ではなく、モジュールのセッション状態で実行されます。 呼び出し元のセッション状態でスクリプトを実行するには、マニフェストの ScriptsToProcess キーの値にスクリプト ファイル名を一覧表示します。
型: | Object[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PassThru
結果のモジュール マニフェストをコンソールに書き込み、 .psd1
ファイルを作成します。 既定では、このコマンドレットは出力を生成しません。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Path
新しいモジュール マニフェストのパスとファイル名を指定します。 $pshome\Modules\MyModule\MyModule.psd1
など、.psd1
ファイル名拡張子を持つパスとファイル名を入力します。 Path パラメーターが必要です。
既存のファイルへのパスを指定した場合、 New-ModuleManifest
は、ファイルに読み取り専用属性がない限り、警告なしでファイルを置き換えます。
マニフェストはモジュールのディレクトリに配置する必要があり、マニフェスト ファイル名はモジュール ディレクトリ名と同じにする必要がありますが、ファイル名拡張子は .psd1
必要があります。
Note
Path パラメーター値のプロンプトに応じて、$PSHOME
や$HOME
などの変数を使用することはできません。 変数を使用するには、コマンドに Path パラメーターを含めます。
型: | String |
配置: | 1 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PowerShellHostName
モジュールに必要な PowerShell ホスト プログラムの名前を指定します。 Windows PowerShell ISE Host や ConsoleHost など、ホスト プログラムの名前を入力します。 ワイルドカードは使用できません。
ホスト・プログラムの名前を見つけるには、プログラムに「 $Host.Name
」と入力します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PowerShellHostVersion
モジュールで動作する PowerShell ホスト プログラムの最小バージョンを指定します。 1.1 などのバージョン番号を入力します。
型: | Version |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PowerShellVersion
このモジュールで動作する PowerShell の最小バージョンを指定します。 たとえば、パラメーターの値として「1.0、2.0、または 3.0」と入力できます。 X.X 形式である必要があります。 たとえば、 5
を送信すると、PowerShell はエラーをスローします。
型: | Version |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PrivateData
インポート時にモジュールに渡されるデータを指定します。
型: | Object |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ProcessorArchitecture
モジュールに必要なプロセッサ アーキテクチャを指定します。 有効な値は x86、AMD64、IA64、MSIL、および None (不明または未指定) です。
型: | ProcessorArchitecture |
指定可能な値: | None, MSIL, X86, IA64, Amd64, Arm |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ProjectUri
このプロジェクトに関する Web ページの URL を指定します。
型: | Uri |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ReleaseNotes
リリース ノートを指定します。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-RequiredAssemblies
モジュールに必要なアセンブリ (.dll
) ファイルを指定します。 アセンブリ ファイル名を入力します。
PowerShell は、型または形式の更新、入れ子になったモジュールのインポート、 RootModule キーの値で指定されたモジュール ファイルのインポートを行う前に、指定したアセンブリを読み込みます。
このパラメーターを使用して、 FormatsToProcess キーまたは TypesToProcess キーにリストされている書式ファイルまたは型ファイルを更新するために読み込む必要があるアセンブリを含め、モジュールが必要とするすべてのアセンブリを一覧表示します NestedModules キーにもバイナリ モジュールとして一覧表示されます。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-RequiredModules
グローバル セッション状態にする必要があるモジュールを指定します。 必要なモジュールがグローバル セッション状態でない場合は、PowerShell によってインポートされます。 必要なモジュールが使用できない場合、 Import-Module
コマンドは失敗します。
各モジュール名を文字列またはハッシュ テーブルとして入力し、 ModuleName および ModuleVersion キーを使用します。 ハッシュ テーブルには、省略可能な GUID キーを指定することもできます。 パラメーター値として文字列とハッシュ テーブルを組み合わせることができます。
PowerShell 2.0 では、 Import-Module
は必要なモジュールを自動的にインポートしません。 必要なモジュールがグローバル セッション状態であることを確認するだけです。
型: | Object[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-RootModule
モジュールのプライマリ ファイルまたはルート ファイルを指定します。 スクリプト (.ps1
)、スクリプト モジュール (.psm1
)、モジュール マニフェスト (.psd1
)、アセンブリ (.dll
)、コマンドレット定義 XML ファイル (.cdxml
)、またはワークフロー (.xaml
) のファイル名を入力します。 モジュールのインポート時に、ルート モジュール ファイルからエクスポートされるメンバーは、呼び出し元のセッション状態にインポートされます。
モジュールにマニフェスト ファイルがあり、 RootModule キーでルート ファイルが指定されていない場合、マニフェストはモジュールのプライマリ ファイルになり、モジュールはマニフェスト モジュール (ModuleType = Manifest) になります。
マニフェストを持つモジュール内の .psm1
ファイルまたは .dll
ファイルからメンバーをエクスポートするには、これらのファイルの名前をマニフェストの RootModule または NestedModules キーの値で指定する必要があります。 それ以外の場合、メンバーはエクスポートされません。
Note
PowerShell 2.0 では、このキーは ModuleToProcess と呼ばれます。 RootModule パラメーター名またはそのModuleToProcessエイリアスを使用できます。
型: | String |
Aliases: | ModuleToProcess |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ScriptsToProcess
モジュールのインポート時に呼び出し元のセッション状態で実行されるスクリプト (.ps1
) ファイルを指定します。
ログイン スクリプトを使用する場合と同様に、これらのスクリプトを使用して、環境を準備できます。
モジュールのセッション状態で実行されるスクリプトを指定するには、 NestedModules キーを使用します。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Tags
タグの配列を指定します。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-TypesToProcess
モジュールのインポート時に実行される型ファイル (.ps1xml
) を指定します。
モジュールをインポートすると、PowerShell は指定されたファイルを使用して Update-TypeData
コマンドレットを実行します。
型ファイルはスコープ設定されていないため、セッション内のすべてのセッション状態に影響します。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-VariablesToExport
モジュールがエクスポートする変数を指定します。 ワイルドカードを使用できます。
このパラメーターを使用して、モジュールによってエクスポートされる変数を制限できます。 エクスポートされた変数のリストから変数を削除できますが、リストに変数を追加することはできません。
このパラメーターを省略 New-ModuleManifest
、 VariablesToExport *
(all) の値を持つキーが作成されます。つまり、モジュールで定義されているすべての変数がマニフェストによってエクスポートされます。
型: | String[] |
配置: | Named |
規定値: | * (all) |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | True |
-WhatIf
New-ModuleManifest
が実行された場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
None
既定では、このコマンドレットは出力を返しません。
PassThru パラメーターを使用すると、このコマンドレットはモジュール マニフェストを表す文字列を返します。
メモ
New-ModuleManifest
は、UTF16 としてエンコードされたモジュール マニフェスト (.psd1
) ファイルを作成します。
モジュール マニフェストは、通常、オプションです。 ただし、モジュール マニフェストは、グローバル アセンブリ キャッシュにインストールされているアセンブリをエクスポートするために必要です。
$pshome\Modules
ディレクトリにファイルを追加または変更するには、管理者として実行 オプションを使用して PowerShell を起動します。
PowerShell 2.0 では、 New-ModuleManifest
の多くのパラメーターは必須でしたが、モジュール マニフェストでは必須ではありません。 PowerShell 3.0 以降では、 Path パラメーターのみが必須です。
セッションは、PowerShell 実行環境のインスタンスです。 セッションは、1 つまたは複数のセッション状態の場合があります。 既定では、セッションはグローバルなセッション状態のみですが、インポートされた各モジュールは独自のセッション状態があります。 セッション状態によって、モジュール内のコマンドは、グローバルなセッション状態に影響を与えずに実行できます。
呼び出し元のセッション状態は、モジュールがインポートされるセッション状態です。 通常はグローバル セッション状態を参照しますが、モジュールが入れ子になったモジュールをインポートする場合、呼び出し元はモジュールであり、呼び出し元のセッション状態はモジュールのセッション状態です。
関連リンク
PowerShell