Freigeben über


Publish-Script

Veröffentlicht ein Skript.

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

Beschreibung

Das Publish-Script Cmdlet veröffentlicht das angegebene Skript im Onlinekatalog.

Dies ist ein Proxy-Cmdlet für das Publish-PSResource Cmdlet in microsoft.PowerShell.PSResourceGet. Weitere Informationen finden Sie unter Publish-PSResource.

Beispiele

Beispiel 1: Erstellen einer Skriptdatei, Hinzufügen von Inhalten und Veröffentlichen

Das New-ScriptFileInfo Cmdlet erstellt eine Skriptdatei mit dem Namen Demo-Script.ps1. Get-Content zeigt den Inhalt von Demo-Script.ps1. Das Add-Content Cmdlet fügt eine Funktion und einen Workflow hinzu.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

Das Test-ScriptFileInfo Cmdlet überprüft Demo-Script.ps1. Das Publish-Script Cmdlet veröffentlicht das Skript im LocalRepo1-Repository . Endlich. Find-Scriptwird verwendet, um im LocalRepo1-Repository zu suchenDemo-Script.ps1.

Parameter

-Confirm

Fordert Sie zur Bestätigung auf, bevor Sie das Cmdlet ausführen.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Force

Das Proxy-Cmdlet ignoriert diesen Parameter, da er nicht unterstützt wird Publish-PSResource.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LiteralPath

Gibt einen Pfad zu einem oder mehreren Speicherorten an. Im Gegensatz zum Path-Parameter wird der Wert des LiteralPath-Parameters genau wie eingegeben verwendet. Es werden keine Zeichen als Wildcards interpretiert. Wenn der Pfad Escapezeichen enthält, schließen Sie sie in einfache Anführungszeichen ein. Einfache Anführungszeichen weisen Windows PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.

Der Parameter wird dem Path-Parameter des Publish-PSResource Cmdlets zugeordnet.

Typ:String
Aliase:PSPath
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-NuGetApiKey

Gibt den API-Schlüssel an, den Sie zum Veröffentlichen eines Skripts im Onlinekatalog verwenden möchten. Der API-Schlüssel ist Teil Ihres Profils im Onlinekatalog. Weitere Informationen finden Sie unter Verwalten von API-Schlüsseln.

Der Parameter wird dem ApiKey-Parameter des Publish-PSResource Cmdlets zugeordnet.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Path

Gibt einen Pfad zu einem oder mehreren Speicherorten an. Wildcards sind zulässig. Der Standardspeicherort ist das aktuelle Verzeichnis.

Typ:String
Position:Named
Standardwert:<Current location>
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:True

-Repository

Gibt den Anzeigenamen eines Repositorys an, das durch Ausführen Register-PSRepositoryregistriert wurde.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was passiert, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

String

PSCredential

Ausgaben

Object

Hinweise

Der PowerShell-Katalog unterstützt die Tls-Versionen 1.0 und 1.1 nicht mehr. Sie müssen TLS 1.2 oder höher verwenden. Verwenden Sie den folgenden Befehl, um sicherzustellen, dass Sie TLS 1.2 verwenden:

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