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 |
-Copyright
Указывает заявление об авторских правах для модуля.
Если этот параметр не указан, 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
По умолчанию этот командлет не возвращает выходные данные.
При использовании параметра 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. Сеанс может иметь одно или несколько состояний сеанса. По умолчанию сеанс имеет только глобальное состояние сеанса, но каждый импортированный модуль имеет собственное состояние сеанса. Состояния сеанса позволяют командам в модуле выполняться без влияния на состояние глобального сеанса.
Состояние сеанса вызывающего объекта — это состояние сеанса, в которое импортируется модуль. Как правило, он относится к состоянию глобального сеанса, но когда модуль импортирует вложенные модули, вызывающий — это модуль, а состояние сеанса вызывающего объекта — это состояние сеанса модуля.
Связанные ссылки
PowerShell