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


Publish-Script

Публикует скрипт.

Синтаксис

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

Описание

Командлет Publish-Script публикует указанный скрипт в онлайн-коллекции.

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

Примеры

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

Командлет New-ScriptFileInfo создает файл скрипта с именем Demo-Script.ps1. Get-Content отображает содержимое Demo-Script.ps1. Командлет 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

Командлет Test-ScriptFileInfo проверяет Demo-Script.ps1. Командлет Publish-Script публикует скрипт в репозитории LocalRepo1 . И наконец. Find-Script используется для поиска Demo-Script.ps1 в репозитории LocalRepo1 .

Параметры

-Confirm

Запрос подтверждения перед выполнением командлета.

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

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

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

-LiteralPath

Указывает путь к одному или нескольким расположениям. В отличие от параметра Path , значение параметра LiteralPath используется точно так же, как введено. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите их в одинарные кавычки. Это позволит Windows PowerShell не интерпретировать какие-либо символы как символы Escape-последовательности.

Параметр сопоставляется с параметром 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.

Параметр сопоставляется с параметром 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

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

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