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>]
[-Prerelease <String>]
[-RequireLicenseAcceptance]
[-ExternalModuleDependencies <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. Create нового манифеста модуля
В этом примере создается манифест модуля в файле, указанном параметром 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: 7/12/2019
#
@{
# Script module or binary module file associated with this manifest.
# RootModule = ''
# Version number of this module.
ModuleVersion = '0.0.1'
# Supported PSEditions
# CompatiblePSEditions = @()
# ID used to uniquely identify this module
GUID = 'e1826c6e-c420-4eef-9ac8-185e3669ca6a'
# Author of this module
Author = 'ContosoAdmin'
# Company or vendor of this module
CompanyName = 'Unknown'
# Copyright statement for this module
Copyright = '(c) ContosoAdmin. All rights reserved.'
# Description of the functionality provided by this module
# Description = ''
# Minimum version of the PowerShell engine required by this module
# PowerShellVersion = ''
# Name of the PowerShell host required by this module
# PowerShellHostName = ''
# Minimum version of the 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 = ''
# Prerelease string of this module
# Prerelease = ''
# Flag to indicate whether the module requires explicit user acceptance for install/update/save
# RequireLicenseAcceptance = $false
# External dependent modules of this module
# ExternalModuleDependencies = @()
} # 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. Create нового манифеста с некоторыми предварительно заполненными параметрами
В этом примере создается манифест модуля. Команда включает параметры PowerShellVersion и AliasesToExport, позволяющие добавить значения в соответствующие ключи манифеста.
$moduleSettings = @{
PowerShellVersion = 1.0
Path = 'C:\ps-test\ManifestTest.psd1'
AliasesToExport = @(
'JKBC'
'DRC'
'TAC'
)
}
New-ModuleManifest @moduleSettings
Пример 3. Create манифеста, для работы с которым требуются другие модули
В этом примере используется строковый формат для указания имени модуля 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. Create манифеста, поддерживающего обновляемую справку
В этом примере используется параметр HelpInfoUri для создания ключа HelpInfoUri в манифесте модуля. Значение параметра и ключа должны начинаться с http или https. Оно сообщает системе обновляемой справки, где найти XML-файл обновляемой справки HelpInfo для этого модуля.
$moduleSettings = @{
HelpInfoUri = 'http://https://go.microsoft.com/fwlink/?LinkID=603'
Path = 'C:\ps-test\ManifestTest.psd1'
}
New-ModuleManifest @moduleSettings
Сведения о обновляемой справке см. в разделе about_Updatable_Help. Сведения о XML-файле HelpInfo см. в разделе Поддержка обновляемой справки.
Пример 5. Получение сведений о модуле
В этом примере показано, как получить значения конфигурации модуля. Значения в манифесте модуля отражаются в значениях свойств объекта модуля.
Командлет Get-Module
используется для получения модуля Microsoft.PowerShell.Diagnostics с помощью параметра List . Команда отправляет модуль командлету 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), то есть все псевдонимы, определенные в модуле, экспортируются манифестом.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Author
Задает автора модуля.
Если этот параметр не указан, New-ModuleManifest
создается ключ author с именем текущего пользователя.
Type: | String |
Position: | Named |
Default value: | Name of the current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ClrVersion
Задает минимальную версию среды CLR платформы Microsoft .NET Framework, которая требуется для работы модуля.
Примечание
Этот параметр действителен только для выпуска PowerShell Desktop, например Windows PowerShell 5.1, и применяется только к платформа .NET Framework версиям ниже 4.5. Это требование не влияет на более новые версии PowerShell или платформа .NET Framework.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CmdletsToExport
Задает экспортируемые модулем командлеты. Разрешено использовать подстановочные знаки.
Этот параметр можно использовать для ограничения экспортируемых модулем командлетов. Он может удалять командлеты из списка экспортированных командлетов, но не может добавлять командлеты в список.
Если этот параметр не указан, New-ModuleManifest
создается ключ CmdletsToExport со значением *
(all), то есть все командлеты, определенные в модуле, экспортируются манифестом.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-CompanyName
Указывает компанию или поставщика, создавшего модуль.
Если этот параметр не указан, New-ModuleManifest
создается ключ CompanyName со значением Unknown.
Type: | String |
Position: | Named |
Default value: | "Unknown" |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompatiblePSEditions
Указывает совместимые с модулем psEditions. Дополнительные сведения о PSEdition см. в статье Модули с совместимыми выпусками PowerShell.
Type: | String[] |
Accepted values: | Desktop, Core |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
Задает заявление об авторских правах на модуль.
Если этот параметр не указан, New-ModuleManifest
создается ключ авторских(c) <year> <username>. All rights reserved.
прав со значением , где <year>
— текущий год, а <username>
— значение ключа author .
Type: | String |
Position: | Named |
Default value: | (c) <year> <username>. All rights reserved. |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultCommandPrefix
Указывает префикс, который добавляется к существительным всех команд в модуле при их импорте в сеанс. Введите строку префикса. Префиксы предотвращают конфликты имен команд в сеансе пользователя.
Пользователи модуля могут переопределить этот префикс, указав параметр Префикс командлета Import-Module
.
Этот параметр появился в PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Описывает содержимое модуля.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DotNetFrameworkVersion
Указывает минимальную версию платформу Microsoft .NET, которая требуется для работы модуля.
Примечание
Этот параметр действителен только для выпуска PowerShell Desktop, например Windows PowerShell 5.1, и применяется только к платформа .NET Framework версиям ниже 4.5. Это требование не влияет на более новые версии PowerShell или платформа .NET Framework.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DscResourcesToExport
Указывает ресурсы Desired State Configuration (DSC), экспортируемые модулем. Разрешено использовать подстановочные знаки.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-ExternalModuleDependencies
Список внешних модулей, от которые зависит этот модуль.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileList
Задает все элементы, включенные в модуль.
Этот ключ выполняет функцию полного списка ресурсов модуля. Файлы, перечисленные в разделе, включаются при публикации модуля, но никакие функции не экспортируются автоматически.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
Указывает файлы форматирования (.ps1xml
), которые запускаются при импорте модуля.
При импорте модуля PowerShell запускает Update-FormatData
командлет с указанными файлами.
Так как файлы форматирования не являются областью действия, они влияют на все состояния сеанса в сеансе.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionsToExport
Задает экспортируемые модулем функции. Разрешено использовать подстановочные знаки.
Этот параметр можно использовать для ограничения экспортируемых модулем функций. Он может удалять функции из списка экспортированных псевдонимов, но не может добавлять функции в список.
Если этот параметр не указан, New-ModuleManifest
создается ключ FunctionsToExport со значением *
(all), то есть все функции, определенные в модуле, экспортируются манифестом.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Guid
Задает уникальный идентификатор модуля. Guid можно использовать для различения модулей с одинаковым именем.
Если этот параметр не указан, New-ModuleManifest
создается ключ GUID в манифесте и guid для значения .
Чтобы создать новый GUID в PowerShell, введите [guid]::NewGuid()
.
Type: | Guid |
Position: | Named |
Default value: | A GUID generated for the module |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HelpInfoUri
Указывает интернет-адрес XML-файла HelpInfo для модуля. Введите универсальный код ресурса (URI), который начинается с http или https.
XML-файл HelpInfo поддерживает функцию обновляемой справки, появившейся в PowerShell 3.0. Он содержит сведения о расположении загружаемых файлов справки для модуля и номера версий последних файлов справки для каждого поддерживаемого языка.
Сведения о обновляемой справке см. в разделе about_Updatable_Help. Сведения о XML-файле HelpInfo см. в разделе Поддержка обновляемой справки.
Этот параметр появился в PowerShell 3.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
Указывает URL-адрес значка для модуля. Указанный значок отображается на веб-странице коллекции модуля.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
Указывает URL-адрес условий лицензирования для модуля.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModuleList
Выводит список всех модулей, включенных в данный модуль.
Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица может иметь дополнительный ключ GUID. В значении параметра строки и хэш-таблицы можно объединять.
Этот ключ выполняет функцию полного списка ресурсов модуля. Модули, перечисленные в значении этого ключа, не обрабатываются автоматически.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModuleVersion
Указывает версию модуля.
Этот параметр не является обязательным, но в манифесте требуется ключ ModuleVersion . Если этот параметр не указан, New-ModuleManifest
создается ключ ModuleVersion со значением 1,0.
Type: | Version |
Position: | Named |
Default value: | 1.0 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NestedModules
Указывает модули скриптов (.psm1
) и двоичные модули (.dll
), которые импортируются в состояние сеанса модуля. Файлы в ключе NestedModules выполняются в том порядке, в котором они указаны в значении .
Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица может иметь дополнительный ключ GUID. В значении параметра строки и хэш-таблицы можно объединять.
Обычно вложенные модули содержат команды, необходимые основному модулю для внутренней обработки.
По умолчанию команды во вложенных модулях экспортируются из состояния сеанса модуля в состояние сеанса вызывающего объекта, но корневой модуль может ограничить экспортируемые команды. Например, с помощью Export-ModuleMember
команды .
Вложенные модули в состоянии сеанса модуля доступны корневому модулю, но они не возвращаются командой Get-Module
в состоянии сеанса вызывающего объекта.
Скрипты (.ps1
), перечисленные в ключе NestedModules , выполняются в состоянии сеанса модуля, а не в состоянии сеанса вызывающего объекта. Чтобы запустить скрипт в состоянии сеанса вызывающего объекта, укажите имя файла скрипта в значении ключа ScriptsToProcess манифеста.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
Записывает итоговый манифест модуля в консоль и создает .psd1
файл. По умолчанию этот командлет не создает никаких выходных данных.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Указывает путь и имя файла нового манифеста модуля. Введите путь и имя файла с расширением .psd1
, например $pshome\Modules\MyModule\MyModule.psd1
. Параметр Path является обязательным.
Если вы указываете путь к существующему файлу, заменяет файл без предупреждения, New-ModuleManifest
если файл не имеет атрибут только для чтения.
Манифест должен находиться в каталоге модуля, а имя файла манифеста должно совпадать с именем каталога модуля, но с расширением .psd1
имени файла.
Примечание
Нельзя использовать переменные, такие как $PSHOME
или $HOME
, в ответ на запрос значения параметра Path . Чтобы использовать переменную, включите параметр Path в команду.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellHostName
Указывает имя ведущего приложения PowerShell, которое требуется модулю. Введите имя хост-программы, например Windows PowerShell isE Host или ConsoleHost. Подстановочные знаки запрещены.
Чтобы найти имя ведущего приложения, введите $Host.Name
в программе .
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellHostVersion
Указывает минимальную версию ведущего приложения PowerShell, которая работает с модулем. Введите номер версии, например, 1.1.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellVersion
Указывает минимальную версию PowerShell, которая работает с этим модулем. Например, в качестве значения параметра можно ввести 1.0, 2.0 или 3.0. Он должен быть в формате X.X. Например, при отправке 5
PowerShell выдаст ошибку.
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Prerelease
Строка предварительной версии этого модуля. При добавлении строки предварительной версии модуль определяется как предварительная версия. Когда модуль публикуется в коллекция PowerShell, эти данные используются для идентификации пакетов предварительного выпуска. Чтобы получить пакеты предварительной версии из коллекции, необходимо использовать параметр AllowPrerelease с командами Find-Module
PowerShellGet , Install-Module
, Update-Module
и Save-Module
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PrivateData
Указывает данные, передаваемые модулю при его импорте.
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProcessorArchitecture
Указывает архитектуру процессора, необходимую для этого модуля. Допустимые значения: x86, AMD64, IA64, MSIL и None (неизвестно или не указано).
Type: | ProcessorArchitecture |
Accepted values: | None, MSIL, X86, IA64, Amd64, Arm |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ProjectUri
Указывает URL-адрес веб-страницы этого проекта.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
Указывает заметки о выпуске.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredAssemblies
Указывает файлы сборки (.dll
), необходимые модулю. Введите имена файлов сборки.
PowerShell загружает указанные сборки перед обновлением типов или форматов, импортом вложенных модулей или импортом файла модуля, указанного в значении ключа RootModule .
Используйте этот параметр для перечисления всех необходимых модулю сборок, включая сборки, загрузка которых требуется для обновления файлов форматирования или файлов типов, указанных в ключах FormatsToProcess и TypesToProcess, даже если эти сборки также указаны как двоичные модули в ключе NestedModules.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredModules
Определяет модули, которые должны присутствовать в глобальном состоянии сеанса. Если необходимые модули не в состоянии глобального сеанса, PowerShell импортирует их. Если необходимые модули недоступны, команда завершается ошибкой Import-Module
.
Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица может иметь дополнительный ключ GUID. В значении параметра строки и хэш-таблицы можно объединять.
В PowerShell 2.0 Import-Module
не импортирует необходимые модули автоматически. Он только проверяет наличие необходимых модулей в глобальном состоянии сеанса.
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequireLicenseAcceptance
Пометка, указывающее, требуется ли явное принятие пользователем модуля для установки, обновления или сохранения.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RootModule
Указывает основной или корневой файл модуля. Введите имя файла скрипта (.ps1
), модуля скрипта (.psm1
), манифеста модуля (.psd1
), сборки (.dll
), XML-файла определения командлета (.cdxml
) или рабочего процесса (.xaml
). При импорте модуля элементы, экспортируемые из корневого файла модуля, импортируются в состояние сеанса вызывающего объекта.
Если в модуле есть файл манифеста и в ключе RootModule не указан корневой файл, манифест становится основным файлом модуля, а модуль становится модулем манифеста (ModuleType = Manifest).
Для экспорта элементов из .psm1
.dll
или файлов в модуле с манифестом имена этих файлов должны быть указаны в значениях ключей RootModule или NestedModules в манифесте. В противном случае их члены не экспортируются.
Примечание
В PowerShell 2.0 этот ключ назывался ModuleToProcess. Можно использовать имя параметра RootModule или его псевдоним ModuleToProcess .
Type: | String |
Aliases: | ModuleToProcess |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
Указывает файлы скриптов (.ps1
), которые выполняются в состоянии сеанса вызывающего объекта при импорте модуля.
Эти скрипты можно использовать для подготовки среды таким же образом, как и скрипт входа в систему.
Чтобы указать скрипты, которые будут выполняться в состоянии сеанса модуля, используйте ключ NestedModules.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Задает массив тегов.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
Указывает файлы типа (.ps1xml
), которые запускаются при импорте модуля.
При импорте модуля PowerShell запускает Update-TypeData
командлет с указанными файлами.
Так как файлы типов не ограничены областью действия, они влияют на все состояния сеанса в сеансе.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariablesToExport
Задает экспортируемые модулем переменные. Разрешено использовать подстановочные знаки.
Этот параметр можно использовать для ограничения экспортируемых модулем переменных. Он может удалять переменные из списка экспортированных переменных, но не может добавлять переменные в список.
Если этот параметр не указан, New-ModuleManifest
создается ключ VariablesToExport со значением *
(all), то есть все переменные, определенные в модуле, экспортируются манифестом.
Type: | String[] |
Position: | Named |
Default value: | * (all) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-WhatIf
Показывает, что произойдет при New-ModuleManifest
выполнении. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
None
Вы не можете передать объекты в этот командлет.
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра PassThru этот командлет возвращает строку, представляющую манифест модуля.
Примечания
New-ModuleManifest
при выполнении на платформах Windows и сторонних платформах создаются файлы манифеста модуля (.psd1
), закодированные как UTF8NoBOM.
Обычно манифесты не являются обязательным условием для работы модуля. При этом манифест модуля необходим для экспорта сборки, установленной в глобальный кэш сборок.
Чтобы добавить или изменить файлы в каталоге $pshome\Modules
, запустите PowerShell с параметром Запуск от имени администратора .
Примечание
Начиная с PowerShell 6.2, PowerShell пытается загрузить все DLL-файлы, перечисленные в свойстве FileList манифеста модуля. Собственные библиотеки DLL в fileList не загружаются в процессе, и ошибка игнорируется. Все управляемые библиотеки DLL загружаются в процессе. Это поведение было удалено в PowerShell 7.1.
В PowerShell 2.0 многие параметры New-ModuleManifest
были обязательными, хотя они не были обязательными в манифесте модуля. Начиная с PowerShell 3.0, только параметр Path является обязательным.
Сеанс — это экземпляр среды выполнения PowerShell. Сеанс может иметь одно или несколько состояний. По умолчанию сеанс имеет только глобальное состояние сеанса, но каждый импортированный модуль имеет собственное состояние сеанса. Состояния сеансов позволяют выполнять команды в модуле, не влияя на глобальное состояние сеанса.
Состояние сеанса вызывающего объекта — это состояние сеанса, в которое импортируется модуль. Как правило, он ссылается на глобальное состояние сеанса, но когда модуль импортирует вложенные модули, вызывающий объект является модулем, а состояние сеанса вызывающего объекта — состоянием сеанса модуля.