Freigeben über


New-PSScriptFileInfo

Das Cmdlet erstellt eine neue Skriptdatei, einschließlich Metadaten zum Skript.

Syntax

New-PSScriptFileInfo
   [-Path] <String>
   [-Version <String>]
   [-Author <String>]
   -Description <String>
   [-Guid <Guid>]
   [-CompanyName <String>]
   [-Copyright <String>]
   [-RequiredModules <Hashtable[]>]
   [-ExternalModuleDependencies <String[]>]
   [-RequiredScripts <String[]>]
   [-ExternalScriptDependencies <String[]>]
   [-Tags <String[]>]
   [-ProjectUri <String>]
   [-LicenseUri <String>]
   [-IconUri <String>]
   [-ReleaseNotes <String>]
   [-PrivateData <String>]
   [-Force]
   [<CommonParameters>]

Beschreibung

Das Cmdlet erstellt eine neue Skriptdatei mit den erforderlichen Metadaten, die zum Veröffentlichen eines Skriptpakets erforderlich sind.

Beispiele

Beispiel 1: Erstellen eines leeren Skripts mit minimalen Informationen

In diesem Beispiel wird das Cmdlet nur mit den erforderlichen Parametern ausgeführt. Der Path-Parameter gibt das Nane und den Speicherort des Skripts an. Der Description-Parameter stellt die Beschreibung bereit, die in der kommentarbasierten Hilfe für das Skript verwendet wird.

New-PSScriptFileInfo -Path ./test_script.ps1 -Description 'This is a test script.'
Get-Content ./test_script.ps1

<#PSScriptInfo

.VERSION 1.0.0.0

.GUID 6ec3934e-a2e0-495b-9a9c-480e555ad1d1

.AUTHOR johndoe

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

.PRIVATEDATA

#>

<#

.DESCRIPTION
This is a test script.

#>

Beispiel 2: Erstellen eines Skripts mit erforderlichen Modulen

In diesem Beispiel wird das Cmdlet mit zusätzlichen Parametern ausgeführt, einschließlich RequiredModules. RequiredModules ist ein Array von Modulspezifikationen.

$parameters = @{
    Path = './test_script2.ps1'
    Description = 'This is a test script.'
    Version = '2.0.0.0'
    Author = 'janedoe'
    RequiredModules =  @(
        @{ModuleName = 'PackageManagement'; ModuleVersion = '1.0.0.0' },
        @{ModuleName = 'PSReadLine'}
    )
}
New-PSScriptFileInfo @parameters
Get-Content ./test_script2.ps1

<#PSScriptInfo

.VERSION 2.0.0.0

.GUID 7ec4832e-a4e1-562b-8a8c-241e535ad7d7

.AUTHOR janedoe

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

.PRIVATEDATA

#>

#Requires -Module PSReadLine
#Requires -Module @{ ModuleName = 'PackageManagement'; ModuleVersion = '1.0.0.0' }

<#

.DESCRIPTION
This is a test script.

#>

Parameter

-Author

Der Name des Autors des Skripts.

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

-CompanyName

Der Name des Unternehmens, das das Skript besitzt.

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

Die Copyrightinformationen für das Skript.

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

-Description

Die Beschreibung des Skripts.

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

-ExternalModuleDependencies

Die Liste der externen Modulabhängigkeiten, die von diesem Skript übernommen werden.

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

-ExternalScriptDependencies

Die Liste der externen Skriptabhängigkeiten, die von diesem Skript übernommen werden.

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

-Force

Erzwingt, dass das Cmdlet eine vorhandene Datei überschreibt.

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

-Guid

Der eindeutige Bezeichner für das Skript im GUID-Format. Wenn Sie keine GUID bereitstellen, erstellt das Cmdlet automatisch eine neue.

Typ:Guid
Position:Named
Standardwert:Randomly generated
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IconUri

Ein Uniform Resource Identifier (URI), der auf das dem Skript zugeordnete Symbol zeigt.

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

-LicenseUri

Der URI, der auf die lizenzvertragsdatei verweist, die dem Skript zugeordnet ist.

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

-Path

Der Dateiname und der Speicherort, an dem das Skript erstellt wird.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PrivateData

Die privaten Daten, die dem Skript zugeordnet sind.

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

-ProjectUri

Der URI, der auf die Projektwebsite verweist, die dem Skript zugeordnet ist.

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

-ReleaseNotes

Die Versionshinweise für das Skript.

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

-RequiredModules

Der Parameter übernimmt ein Array von Modulspezifikationshashtabellen. Eine Modulspezifikation ist eine Hashtabelle mit den folgenden Schlüsseln.

  • ModuleName - Erforderlich Gibt den Modulnamen an.
  • GUID - Optional Gibt die GUID des Moduls an.
  • Es ist auch erforderlich , mindestens einen der drei folgenden Schlüssel anzugeben.
    • ModuleVersion – Gibt eine zulässige Mindestversion des Moduls an.
    • MaximumVersion – Gibt die maximal zulässige Version des Moduls an.
    • RequiredVersion – Gibt eine exakte, erforderliche Version des Moduls an. Dies kann nicht mit den anderen Versionsschlüsseln verwendet werden.
Typ:Hashtable[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-RequiredScripts

Die Liste der für das Skript erforderlichen Skripts.

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

-Tags

Die dem Skript zugeordneten Tags. Tagwerte sind Zeichenfolgen, die keine Leerzeichen enthalten sollten. Weitere Informationen finden Sie unter Tagdetails.

Typ:String[]
Aliase:Tag
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Version

Die Version des Skripts. Wenn kein Wert angegeben ist , lautet Version standardmäßig 1.0.0.0.

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

Eingaben

None

Ausgaben

Object

Hinweise

Die New-PSScriptFileInfo Cmdlets und Update-PSScriptFileInfo platzieren die #requires Anweisungen für erforderliche Module zwischen den <#PSScriptInfo kommentarbasierten Hilfeblöcken der Hilfedatei. Die Get-PSScriptFileInfo erwartet, #requires dass Anweisungen an einer stelle vor dem kommentarbasierten Hilfeblock platziert werden. Alle #requires Anweisungen, die nach dem kommentarbasierten Hilfeblock platziert werden, werden von Get-PSScriptFileInfo und Publish-PSResourceignoriert.