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


New-ScriptFileInfo

Создает файл скрипта с метаданными.

Синтаксис

New-ScriptFileInfo
   [[-Path] <String>]
   [-Version <String>]
   [-Author <String>]
   -Description <String>
   [-Guid <Guid>]
   [-CompanyName <String>]
   [-Copyright <String>]
   [-RequiredModules <Object[]>]
   [-ExternalModuleDependencies <String[]>]
   [-RequiredScripts <String[]>]
   [-ExternalScriptDependencies <String[]>]
   [-Tags <String[]>]
   [-ProjectUri <Uri>]
   [-LicenseUri <Uri>]
   [-IconUri <Uri>]
   [-ReleaseNotes <String[]>]
   [-PrivateData <String>]
   [-PassThru]
   [-Force]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Описание

Командлет New-ScriptFileInfo создает файл скрипта PowerShell, включая метаданные о скрипте.

Это командлет прокси-сервера для командлета New-PSScriptFileInfo в Microsoft.PowerShell.PSResourceGet. Дополнительные сведения см. в статье New-PSScriptFileInfo.

Примеры

Пример 1. Создание файла скрипта и указание его версии, автора и описания

В этом примере создается файл скрипта, а его содержимое отображается в консоли PowerShell.

$Parms = @{
  Path = "C:\Test\Temp-Scriptfile.ps1"
  Version = "1.0"
  Author = "[email protected]"
  Description = "My test script file description goes here"
  }
New-ScriptFileInfo @Parms
Get-Content -Path C:\Test\Temp-Scriptfile.ps1

<#PSScriptInfo

.VERSION 1.0

.GUID 3bb10ee7-38c1-41b9-88ea-16899164fc19

.AUTHOR [email protected]

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

.PRIVATEDATA

#>

<#

.DESCRIPTION
 My test script file description goes here

#>
Param()

Командлет New-ScriptFileInfo использует splatting для настройки нескольких параметров для скрипта. Путь задает расположение и имя скрипта. Версия указывает номер версии скрипта. Автор — это адрес электронной почты пользователя, создавшего скрипт. Описание объясняет назначение скрипта.

После создания Get-Content скрипта использует параметр Path для поиска скрипта. Содержимое скрипта отображается в консоли PowerShell.

Пример 2. Тестирование файла скрипта

В этом примере проверяется метаданные скрипта, созданного в примере 1 .

Test-ScriptFileInfo -Path C:\Test\Temp-Scriptfile.ps1

Version   Name                  Author               Description
-------   ----                  ------               -----------
1.0       Temp-Scriptfile       [email protected]   My test script file description goes here

Командлет Test-ScriptFileInfo использует параметр Path для указания расположения файла скрипта.

Пример 3. Создание файла скрипта со всеми свойствами метаданных

В этом примере используется splatting для создания файла скрипта с именем New-ScriptFile.ps1 , включающего все его свойства метаданных. Подробный параметр указывает, что подробные выходные данные отображаются при создании скрипта.

$Parms = @{
 Path = "C:\Test\New-ScriptFile.ps1"
 Verbose = $True
 Version = "1.0"
 Author = "[email protected]"
 Description = "My new script file test"
 CompanyName = "Contoso Corporation"
 Copyright = "2019 Contoso Corporation. All rights reserved."
 ExternalModuleDependencies = "ff","bb"
 RequiredScripts = "Start-WFContosoServer", "Stop-ContosoServerScript"
 ExternalScriptDependencies = "Stop-ContosoServerScript"
 Tags = @("Tag1", "Tag2", "Tag3")
 ProjectUri = "https://contoso.com"
 LicenseUri = "https://contoso.com/License"
 IconUri = "https://contoso.com/Icon"
 PassThru = $True
 ReleaseNotes = @("Contoso script now supports the following features:",
   "Feature 1",
   "Feature 2",
   "Feature 3",
   "Feature 4",
   "Feature 5")
 RequiredModules =
   "1",
   "2",
   "RequiredModule1",
   @{ModuleName="RequiredModule2";ModuleVersion="1.0"},
   @{ModuleName="RequiredModule3";RequiredVersion="2.0"},
   "ExternalModule1"
 }
New-ScriptFileInfo @Parms

VERBOSE: Performing the operation "Creating the 'C:\Test\New-ScriptFile.ps1'
  PowerShell Script file" on target "C:\Test\New-ScriptFile.ps1".

<#PSScriptInfo

.VERSION 1.0

.GUID 4fabe8c7-7862-45b1-a72e-1352a433b77d

.AUTHOR [email protected]

.COMPANYNAME Contoso Corporation

.COPYRIGHT 2019 Contoso Corporation. All rights reserved.

.TAGS Tag1 Tag2 Tag3

.LICENSEURI https://contoso.com/License

.PROJECTURI https://contoso.com/

.ICONURI https://contoso.com/Icon

.EXTERNALMODULEDEPENDENCIES ff,bb

.REQUIREDSCRIPTS Start-WFContosoServer,Stop-ContosoServerScript

.EXTERNALSCRIPTDEPENDENCIES Stop-ContosoServerScript

.RELEASENOTES
Contoso script now supports the following features:
Feature 1
Feature 2
Feature 3
Feature 4
Feature 5

.PRIVATEDATA

#>

#Requires -Module 1
#Requires -Module 2
#Requires -Module RequiredModule1
#Requires -Module @{ModuleName = 'RequiredModule2'; ModuleVersion = '1.0'}
#Requires -Module @{RequiredVersion = '2.0'; ModuleName = 'RequiredModule3'}
#Requires -Module ExternalModule1

<#

.DESCRIPTION
 My new script file test

#>
Param()

Параметры

-Author

Задает автора скрипта.

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

-CompanyName

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

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

-Confirm

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

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

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

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

-Description

Указывает описание скрипта.

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

-ExternalModuleDependencies

Задает массив зависимостей внешнего модуля.

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

-ExternalScriptDependencies

Задает массив зависимостей внешнего скрипта.

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

-Force

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

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

-Guid

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

Тип:Guid
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

-PassThru

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается New-PSScriptFileInfo.

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

-Path

Указывает расположение, в котором сохраняется файл скрипта.

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

-PrivateData

Указывает частные данные для скрипта.

Тип:String
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

-RequiredModules

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

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

-RequiredScripts

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

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

-Tags

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

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

-Version

Указывает версию скрипта.

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

-WhatIf

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

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

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

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