Partager via


Publish-Script

Publie un script.

Syntaxe

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

L’applet Publish-Script de commande publie le script spécifié dans la galerie en ligne.

Il s’agit d’une applet de commande proxy pour l’applet Publish-PSResource de commande dans Microsoft.PowerShell.PSResourceGet. Pour plus d’informations, consultez Publish-PSResource.

Exemples

Exemple 1 : Créer un fichier de script, y ajouter du contenu et le publier

L’applet New-ScriptFileInfo de commande crée un fichier de script nommé Demo-Script.ps1. Get-Content affiche le contenu de Demo-Script.ps1. L’applet Add-Content de commande ajoute une fonction et un flux de travail à 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

L’applet Test-ScriptFileInfo de commande valide Demo-Script.ps1. L’applet Publish-Script de commande publie le script dans le référentiel LocalRepo1 . Finalement. Find-Script est utilisé pour rechercher Demo-Script.ps1 dans le référentiel LocalRepo1 .

Paramètres

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Credential

Type:PSCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Force

L’applet de commande proxy ignore ce paramètre, car il n’est pas pris en charge par Publish-PSResource.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-LiteralPath

Spécifie un chemin d’accès à un ou plusieurs emplacements. Contrairement au paramètre Path , la valeur du paramètre LiteralPath est utilisée exactement comme entrée. Aucun caractère n’est interprété en tant que caractère générique. Si le chemin inclut des caractères d’échappement, placez-les entre guillemets simples. Les guillemets simples indiquent à Windows PowerShell de ne pas interpréter de caractères comme séquences d’échappement.

Le paramètre est mappé au paramètre Path de l’applet Publish-PSResource de commande.

Type:String
Alias:PSPath
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-NuGetApiKey

Spécifie la clé API que vous souhaitez utiliser pour publier un script dans la galerie en ligne. La clé API fait partie de votre profil dans la galerie en ligne. Pour plus d’informations, consultez Gestion des clés API.

Le paramètre est mappé au paramètre ApiKey de l’applet Publish-PSResource de commande.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Path

Spécifie un chemin d’accès à un ou plusieurs emplacements. Les caractères génériques sont autorisés. L'emplacement par défaut est le répertoire actif.

Type:String
Position:Named
Valeur par défaut:<Current location>
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:True

-Repository

Spécifie le nom convivial d’un référentiel qui a été inscrit en exécutant Register-PSRepository.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande ne s’exécute pas.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

PSCredential

Sorties

Object

Notes

PowerShell Gallery ne prend plus en charge les versions TLS (Transport Layer Security) 1.0 et 1.1. Vous devez utiliser TLS 1.2 ou version ultérieure. Utilisez la commande suivante pour vous assurer que vous utilisez TLS 1.2 :

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