다음을 통해 공유


New-ScriptFileInfo

메타데이터를 사용하여 스크립트 파일을 만듭니다.

Syntax

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>]

Description

cmdlet은 New-ScriptFileInfo 스크립트에 대한 메타데이터를 포함하여 PowerShell 스크립트 파일을 만듭니다.

Microsoft.PowerShell.PSResourceGetNew-PSScriptFileInfo cmdlet에 대한 프록시 cmdlet입니다. 자세한 내용은 New-PSScriptFileInfo를 참조하세요.

예제

예제 1: 스크립트 파일을 만들고 해당 버전, 작성자 및 설명을 지정합니다.

이 예제에서는 스크립트 파일이 만들어지고 해당 내용이 PowerShell 콘솔에 표시됩니다.

$Parms = @{
  Path = "C:\Test\Temp-Scriptfile.ps1"
  Version = "1.0"
  Author = "pattif@contoso.com"
  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 pattif@contoso.com

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

.PRIVATEDATA

#>

<#

.DESCRIPTION
 My test script file description goes here

#>
Param()

cmdlet은 New-ScriptFileInfo 스플래팅을 사용하여 스크립트에 대한 여러 매개 변수를 구성합니다. 경로 는 스크립트의 위치와 이름을 설정합니다. Version 은 스크립트의 버전 번호를 지정합니다. 작성 자는 스크립트를 만든 사람의 이메일 주소입니다. 설명 은 스크립트의 용도를 설명합니다.

스크립트를 만든 후 PathGet-Content 매개 변수를 사용하여 스크립트를 찾습니다. 스크립트의 내용은 PowerShell 콘솔에 표시됩니다.

예제 2: 스크립트 파일 테스트

이 예제에서는 예제 1 에서 만든 스크립트에 대한 메타데이터가 테스트됩니다.

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

Version   Name                  Author               Description
-------   ----                  ------               -----------
1.0       Temp-Scriptfile       pattif@contoso.com   My test script file description goes here

cmdlet은 Test-ScriptFileInfoPath 매개 변수를 사용하여 스크립트 파일의 위치를 지정합니다.

예제 3: 모든 메타데이터 속성을 사용하여 스크립트 파일 만들기

이 예제에서는 스플래팅을 사용하여 모든 메타데이터 속성을 포함하는 라는 New-ScriptFile.ps1 스크립트 파일을 만듭니다. Verbose 매개 변수는 스크립트를 만들 때 자세한 정보 표시 출력이 표시되도록 지정합니다.

$Parms = @{
 Path = "C:\Test\New-ScriptFile.ps1"
 Verbose = $True
 Version = "1.0"
 Author = "pattif@contoso.com"
 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 pattif@contoso.com

.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

스크립트 작성자를 지정합니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CompanyName

스크립트를 만든 회사 또는 공급업체를 지정합니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

를 실행하기 전에 확인 메시지를 표시합니다 New-ScriptFileInfo.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

스크립트에 대한 저작권 문을 지정합니다.

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:True
Accept pipeline input:False
Accept wildcard characters:False

-ExternalModuleDependencies

외부 모듈 종속성의 배열을 지정합니다.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExternalScriptDependencies

외부 스크립트 종속성의 배열을 지정합니다.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

사용자 확인을 요청하지 않고 명령을 강제 실행합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Guid

스크립트의 고유 ID를 지정합니다.

Type:Guid
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

-PassThru

프록시 cmdlet은 에서 지원 New-PSScriptFileInfo되지 않으므로 이 매개 변수를 무시합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

스크립트 파일이 저장되는 위치를 지정합니다.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PrivateData

스크립트에 대한 프라이빗 데이터를 지정합니다.

Type:String
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

-RequiredModules

전역 세션 상태여야 하는 모듈을 지정합니다. 필요한 모듈이 전역 세션 상태가 아닌 경우 PowerShell에서 해당 모듈을 가져옵니다.

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredScripts

필요한 스크립트의 배열을 지정합니다.

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

-Version

스크립트의 버전을 지정합니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

실행될 경우 New-ScriptFileInfo 어떤 일이 발생하는지 표시합니다. cmdlet이 실행되지 않습니다.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

String

출력

Object