Publish-Script

스크립트를 게시합니다.

Syntax

Publish-Script
       -Path <String>
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-Force]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Publish-Script
       -LiteralPath <String>
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-Force]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

cmdlet은 Publish-Script 지정된 스크립트를 온라인 갤러리에 게시합니다.

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

예제

예제 1: 스크립트 파일 만들기, 콘텐츠 추가 및 게시

cmdlet은 New-ScriptFileInfo 라는 Demo-Script.ps1스크립트 파일을 만듭니다. Get-Content 는 의 Demo-Script.ps1콘텐츠를 표시합니다. cmdlet은 Add-Content 함수와 워크플로를 에 Demo-Script.ps1추가합니다.

$newScriptInfo = @{
  Path = 'D:\ScriptSharingDemo\Demo-Script.ps1'
  Version = '1.0'
  Author = 'author@contoso.com'
  Description = "my test script file description goes here"
}
New-ScriptFileInfo @newScriptInfo
Get-Content -Path $newScriptInfo.Path

<#PSScriptInfo

.VERSION 1.0

.AUTHOR pattif@microsoft.com

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES
#>

<#
.DESCRIPTION
 my test script file description goes here
#>
Param()

Add-Content -Path D:\ScriptSharingDemo\Demo-Script.ps1 -Value @"

Function Demo-ScriptFunction { 'Demo-ScriptFunction' }

Workflow Demo-ScriptWorkflow { 'Demo-ScriptWorkflow' }

Demo-ScriptFunction
Demo-ScriptWorkflow
"@
Test-ScriptFileInfo -Path D:\ScriptSharingDemo\Demo-Script.ps1

Version    Name                 Author                   Description
-------    ----                 ------                   -----------
1.0        Demo-Script          author@contoso.com       my test script file description goes here

Publish-Script -Path D:\ScriptSharingDemo\Demo-Script.ps1 -Repository LocalRepo1
Find-Script -Repository LocalRepo1 -Name "Demo-Script"

Version    Name                 Type       Repository    Description
-------    ----                 ----       ----------    -----------
1.0        Demo-Script          Script     LocalRepo1    my test script file description goes here

cmdlet은 Test-ScriptFileInfo 의 유효성을 검사합니다.Demo-Script.ps1 cmdlet은 Publish-Script스크립트를 LocalRepo1 리포지토리에 게시합니다. 마지막으로, Find-ScriptLocalRepo1 리포지토리에서 검색 Demo-Script.ps1 하는 데 사용됩니다.

매개 변수

-Confirm

cmdlet을 실행하기 전에 확인을 요청합니다.

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

-Credential

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

-Force

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

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

-LiteralPath

하나 이상의 위치에 대한 경로를 지정합니다. Path 매개 변수와 달리 LiteralPath 매개 변수의 값은 입력한 대로 정확하게 사용됩니다. 어떠한 문자도 와일드카드로 해석되지 않습니다. 경로에 이스케이프 문자가 포함된 경우 작은따옴표로 묶습니다. 작은따옴표는 Windows PowerShell이 어떤 문자도 이스케이프 시퀀스로 해석하지 않도록 지시합니다.

매개 변수는 cmdlet의 Path 매개 변수에 Publish-PSResource 매핑됩니다.

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

-NuGetApiKey

스크립트를 온라인 갤러리에 게시하는 데 사용할 API 키를 지정합니다. API 키는 온라인 갤러리의 프로필에 속합니다. 자세한 내용은 API 키 관리를 참조하세요.

매개 변수는 cmdlet의 ApiKey 매개 변수에 Publish-PSResource 매핑됩니다.

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

-Path

하나 이상의 위치에 대한 경로를 지정합니다. 와일드카드가 지원됩니다. 기본 위치는 현재 디렉터리입니다.

Type:String
Position:Named
Default value:<Current location>
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-Repository

를 실행 Register-PSRepository하여 등록된 리포지토리의 이름을 지정합니다.

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

-WhatIf

cmdlet을 실행할 경우 발생하는 일을 표시합니다. cmdlet은 실행되지 않습니다.

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

입력

String

PSCredential

출력

Object

참고

PowerShell 갤러리 더 이상 TLS(전송 계층 보안) 버전 1.0 및 1.1을 지원하지 않습니다. TLS 1.2 이상을 사용해야 합니다. 다음 명령을 사용하여 TLS 1.2를 사용하는지 확인합니다.

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12