Поделиться через


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. Создание манифеста модуля

В этом примере создается новый манифест модуля в файле, указанном параметром пути . Параметр 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. Создание нового манифеста с некоторыми предварительно заполненными параметрами

В этом примере создается новый манифест модуля. Он использует параметры 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. Для получения сведений о XML-файле HelpInfo см. Поддержка обновляемой справки.

Пример 5. Получение сведений о модуле

В этом примере показано, как получить значения конфигурации модуля. Значения в манифесте модуля отражаются в значениях свойств объекта модуля.

Командлет Get-Module используется для получения модуля 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 со значением * (все), то есть все псевдонимы, определенные в модуле, экспортируются манифестом.

Тип:String[]
Position:Named
Default value:* (all)
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-Author

Указывает автора модуля.

Если этот параметр не указан, New-ModuleManifest создает ключ Author с именем текущего пользователя.

Тип:String
Position:Named
Default value:Name of the current user
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ClrVersion

Задает минимальную версию Системы Общего Языка (CLR) Microsoft .NET Framework, требуемую модулем.

Заметка

Этот параметр действителен только для выпуска PowerShell Desktop, например Windows PowerShell 5.1, и применяется только к версиям .NET Framework ниже 4.5. Это требование не влияет на более новые версии PowerShell или .NET Framework.

Тип:Version
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CmdletsToExport

Указывает командлеты, экспортируемые модулем. Разрешены подстановочные знаки.

Этот параметр можно использовать для ограничения командлетов, экспортируемых модулем. Он может удалить командлеты из списка экспортированных командлетов, но он не может добавлять командлеты в список.

Если этот параметр не указан, New-ModuleManifest создает ключ CmdletsToExport со значением * (все), что означает, что все командлеты, определенные в модуле, экспортируются манифестом.

Тип:String[]
Position:Named
Default value:* (all)
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-CompanyName

Определяет компанию или поставщика, создавшего модуль.

Если этот параметр не указан, New-ModuleManifest создает ключ companyName с значением "Неизвестно".

Тип:String
Position:Named
Default value:"Unknown"
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CompatiblePSEditions

Указывает PSEditions, совместимые с модулем. Для получения информации о PSEdition см. раздел Модули с совместимыми редакциями PowerShell.

Тип:String[]
Допустимые значения:Desktop, Core
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрашивает подтверждение перед запуском командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Указывает заявление об авторских правах для модуля.

Если этот параметр не указан, New-ModuleManifest создает ключ авторских прав со значением (c) <year> <username>. All rights reserved., где <year> текущий год, а <username> — значение ключа Author.

Тип:String
Position:Named
Default value:(c) <year> <username>. All rights reserved.
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DefaultCommandPrefix

Указывает префикс, который добавляется к существительным всех команд в модуле при их импорте в сеанс. Введите строку префикса. Префиксы предотвращают конфликты имен команд в сеансе пользователя.

Пользователи модуля могут переопределить этот префикс, указав параметр префикса командлета Import-Module.

Этот параметр появился в PowerShell 3.0.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Description

Описывает содержимое модуля.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DotNetFrameworkVersion

Указывает минимальную версию Microsoft .NET Framework, которую требует модуль.

Заметка

Этот параметр действителен только для выпуска PowerShell Desktop, например Windows PowerShell 5.1, и применяется только к версиям .NET Framework ниже 4.5. Это требование не влияет на более новые версии PowerShell или .NET Framework.

Тип:Version
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DscResourcesToExport

Указывает ресурсы требуемой конфигурации состояния (DSC), экспортируемые модулем. Разрешены подстановочные знаки.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-ExternalModuleDependencies

Список внешних модулей, от которые зависит этот модуль.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-FileList

Указывает все элементы, включенные в модуль.

Этот ключ предназначен для работы в качестве инвентаризации модулей. Файлы, перечисленные в ключе, включаются при публикации модуля, но все функции не экспортируются автоматически.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-FormatsToProcess

Указывает файлы форматирования (.ps1xml), которые выполняются при импорте модуля.

При импорте модуля PowerShell запускает командлет Update-FormatData с указанными файлами. Поскольку файлы форматирования не ограничены, они влияют на все состояния в сеансе.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-FunctionsToExport

Указывает функции, экспортируемые модулем. Разрешены подстановочные символы.

Этот параметр можно использовать для ограничения функций, экспортируемых модулем. Он может удалить функции из списка экспортированных псевдонимов, но он не может добавлять функции в список.

Если этот параметр не указан, New-ModuleManifest создает ключ FunctionsToExport со значением * (все), то есть все функции, определенные в модуле, экспортируются манифестом.

Тип:String[]
Position:Named
Default value:* (all)
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-Guid

Указывает уникальный идентификатор модуля. GUID можно использовать для различения модулей с одинаковым именем.

Если вы не укажете этот параметр, New-ModuleManifest создаст в манифесте ключ GUID и сгенерирует GUID для значения.

Чтобы создать новый GUID с помощью PowerShell, введите [guid]::NewGuid().

Тип:Guid
Position:Named
Default value:A GUID generated for the module
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-HelpInfoUri

Указывает интернет-адрес XML-файла HelpInfo для модуля. Введите универсальный код ресурса (URI), начинающийся с http или https.

XML-файл HelpInfo поддерживает обновляемую функцию справки, представленную в PowerShell 3.0. Он содержит сведения о расположении скачиваемых файлов справки для модуля и номера версий самых новых файлов справки для каждого поддерживаемого языкового стандарта.

Сведения об обновляемой справке см. в about_Updatable_Help. Сведения о XML-файле HelpInfo см. в разделе , "Обновляемая справка",.

Этот параметр появился в PowerShell 3.0.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-IconUri

Указывает URL-адрес значка модуля. Указанный значок отображается на веб-странице галереи для модуля.

Тип:Uri
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-LicenseUri

Указывает URL-адрес условий лицензирования модуля.

Тип:Uri
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ModuleList

Перечисляет все модули, включенные в этот модуль.

Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица также может иметь необязательный ключ GUID. Строки и хэш-таблицы можно объединить в значении параметра.

Этот ключ предназначен для работы в качестве инвентаризации модулей. Модули, перечисленные в значении этого ключа, не обрабатываются автоматически.

Тип:Object[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ModuleVersion

Указывает версию модуля.

Этот параметр не является обязательным, но в манифесте требуется ключ ModuleVersion. Если этот параметр не указан, New-ModuleManifest создает ключ ModuleVersion со значением 1.0.

Тип:Version
Position:Named
Default value:1.0
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-NestedModules

Задает модули скриптов (.psm1) и двоичные модули (.dll), импортируемые в состояние сеанса модуля. Файлы в NestedModules запускаются в том порядке, в котором они указаны в этом значении.

Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица также может иметь необязательный ключ GUID. Строки и хэш-таблицы можно объединить в значении параметра.

Как правило, вложенные модули содержат команды, необходимые корневому модулю для внутренней обработки. По умолчанию команды в вложенных модулях экспортируются из состояния сеанса модуля в состояние сеанса вызывающего объекта, но корневой модуль может ограничить экспортируемые команды. Например, с помощью команды Export-ModuleMember.

Вложенные модули в состоянии сеанса модуля доступны корневому модулю, но они не возвращаются командой Get-Module в состоянии сеанса вызывающего объекта.

Скрипты (.ps1), перечисленные в NestedModules ключа, выполняются в состоянии сеанса модуля, а не в состоянии сеанса вызывающего объекта. Чтобы запустить скрипт в контексте сеанса вызывающего, укажите имя файла скрипта в значении ключа ScriptsToProcess в манифесте.

Тип:Object[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PassThru

Записывает полученный манифест модуля в консоль и создает файл .psd1. По умолчанию этот командлет не создает выходные данные.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Path

Указывает путь и имя файла нового манифеста модуля. Введите путь и имя файла с расширением имени файла .psd1, например $pshome\Modules\MyModule\MyModule.psd1. Требуется параметр пути.

Если указать путь к существующему файлу, New-ModuleManifest заменяет файл без предупреждения, если файл не имеет атрибута только для чтения.

Манифест должен находиться в каталоге модуля, а имя файла манифеста должно совпадать с именем каталога модуля, но с расширением имени файла .psd1.

Заметка

Нельзя использовать переменные, такие как $PSHOME или $HOME, в ответ на запрос значения параметра пути. Чтобы использовать переменную, включите параметр пути в команду.

Тип:String
Position:1
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PowerShellHostName

Указывает имя конечной программы PowerShell, которую требует модуль. Введите имя хост-программы, например узла интегрированной среды сценариев Windows PowerShell или ConsoleHost. Подстановочные знаки не разрешены.

Чтобы найти имя хост-программы, в программе введите $Host.Name.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PowerShellHostVersion

Указывает минимальную версию хост-программы PowerShell, которая работает с модулем. Введите номер версии, например 1.1.

Тип:Version
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PowerShellVersion

Указывает минимальную версию PowerShell, которая работает с этим модулем. Например, можно ввести 1.0, 2.0 или 3.0 в качестве значения параметра. Он должен быть в формате X.X. Например, если вы отправляете 5, PowerShell вызовет ошибку.

Тип:Version
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Prerelease

Строка предварительного релиза этого модуля. Добавление строки prerelease определяет модуль как предварительную версию. Когда модуль публикуется в коллекции PowerShell, эти данные используются для идентификации пакетов предварительной версии. Чтобы получить пакеты предварительной версии из галереи, необходимо использовать параметр AllowPrerelease с командами PowerShellGet Find-Module, Install-Module, Update-Moduleи Save-Module.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PrivateData

Указывает данные, передаваемые модулю при его импорте.

Тип:Object
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ProcessorArchitecture

Указывает архитектуру процессора, требуемую модулем. Допустимые значения: x86, AMD64, IA64, MSIL и None (неизвестно или не указано).

Тип:ProcessorArchitecture
Допустимые значения:None, MSIL, X86, IA64, Amd64, Arm
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ProjectUri

Указывает URL-адрес веб-страницы этого проекта.

Тип:Uri
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ReleaseNotes

Указывает заметки о выпуске.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RequiredAssemblies

Указывает файлы сборки (.dll), необходимые модулю. Введите имена файлов сборки. PowerShell загружает указанные сборки перед обновлением типов или форматов, импортом вложенных модулей или импортом файла модуля, указанного в значении ключа RootModule.

Используйте этот параметр для перечисления всех необходимых сборок, включая сборки, которые необходимо загрузить для обновления всех файлов форматирования или типов, перечисленных в ключах FormatsToProcess или TypesToProcess, даже если эти сборки также перечислены как двоичные модули в ключе NestedModules.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RequiredModules

Указывает модули, которые должны находиться в состоянии глобального сеанса. Если необходимых модулей нет в состоянии глобального сеанса, PowerShell импортирует их. Если необходимые модули недоступны, команда Import-Module завершается ошибкой.

Введите имя каждого модуля в виде строки или хэш-таблицы с ключами ModuleName и ModuleVersion. Хэш-таблица также может иметь необязательный ключ GUID. Строки и хэш-таблицы можно объединить в значении параметра.

В PowerShell 2.0 Import-Module не импортирует необходимые модули автоматически. Он просто проверяет, находятся ли необходимые модули в состоянии глобального сеанса.

Тип:Object[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RequireLicenseAcceptance

Пометка, указывающая, требуется ли явное согласие пользователя для установки, обновления или сохранения.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RootModule

Указывает основной или корневой файл модуля. Введите имя файла скрипта (.ps1), модуль скрипта (.psm1), манифест модуля (.psd1), сборку (.dll), XML-файл определения командлета (.cdxml) или рабочий процесс (.xaml). При импорте модуля члены, экспортированные из корневого файла модуля, импортируются в состояние сеанса вызывающего объекта.

Если модуль содержит файл манифеста и корневой файл не был назначен в ключе RootModule, манифест становится основным файлом для модуля, а модуль становится модулем манифеста (ModuleType = Manifest).

Чтобы экспортировать элементы из файлов .psm1 или .dll в модуле с манифестом, необходимо указать имена этих файлов в значениях ключей RootModule или NestedModules в манифесте. В противном случае их члены не экспортируются.

Заметка

В PowerShell 2.0 этот ключ назывался ModuleToProcess. Можно использовать имя параметра RootModule или псевдоним ModuleToProcess.

Тип:String
Aliases:ModuleToProcess
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ScriptsToProcess

Задает файлы скрипта (.ps1), которые выполняются в состоянии сеанса вызывающего объекта при импорте модуля. Эти сценарии можно использовать для подготовки среды так же, как и скрипт входа.

Чтобы указать скрипты, которые выполняются в состоянии сеанса модуля, используйте ключ NestedModules.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Tags

Задает массив тегов.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-TypesToProcess

Указывает файлы типов (.ps1xml), которые выполняются при импорте модуля.

При импорте модуля PowerShell запускает командлет Update-TypeData с указанными файлами. Поскольку файлы типов не имеют области видимости, они влияют на все состояния сеанса.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-VariablesToExport

Указывает переменные, экспортируемые модулем. Разрешены подстановочные знаки.

Этот параметр можно использовать для ограничения переменных, экспортируемых модулем. Он может удалять переменные из списка экспортированных переменных, но не может добавлять переменные в список.

Если этот параметр не указан, New-ModuleManifest создает ключ ПеременныеДляЭкспорта со значением * (все), то есть манифест экспортирует все переменные, определенные в модуле.

Тип:String[]
Position:Named
Default value:* (all)
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-WhatIf

Показывает, что произойдет, если New-ModuleManifest будет выполнен. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

None

По умолчанию этот командлет не возвращает выходные данные.

String

При использовании параметра PassThru этот командлет возвращает строку, представляющую манифест модуля.

Примечания

New-ModuleManifest, работающий на платформах Windows и не-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. Сеанс может иметь одно или несколько состояний сеанса. По умолчанию сеанс имеет только глобальное состояние сеанса, но каждый импортированный модуль имеет собственное состояние сеанса. Состояния сеанса позволяют командам в модуле выполняться без влияния на состояние глобального сеанса.

Состояние сеанса вызывающего объекта — это состояние сеанса, в которое импортируется модуль. Как правило, он относится к состоянию глобального сеанса, но когда модуль импортирует вложенные модули, вызывающий — это модуль, а состояние сеанса вызывающего объекта — это состояние сеанса модуля.