Udostępnij za pośrednictwem


New-PSScriptFileInfo

Polecenie cmdlet tworzy nowy plik skryptu, w tym metadane dotyczące skryptu.

Składnia

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

Opis

Polecenie cmdlet tworzy nowy plik skryptu zawierający wymagane metadane potrzebne do opublikowania pakietu skryptu.

Przykłady

Przykład 1. Tworzenie pustego skryptu z minimalnymi informacjami

W tym przykładzie polecenie cmdlet jest uruchamiane przy użyciu tylko wymaganych parametrów. Parametr Path określa nane i lokalizację skryptu. Parametr Opis udostępnia opis używany w pomocy opartej na komentarzach dla skryptu.

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.

#>

Przykład 2. Tworzenie skryptu z wymaganymi modułami

W tym przykładzie jest uruchamiane polecenie cmdlet z dodatkowymi parametrami, w tym RequiredModules. RequiredModules to tablica specyfikacji modułu.

$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.

#>

Parametry

-Author

Nazwa autora skryptu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-CompanyName

Nazwa firmy będąca właścicielem skryptu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Informacje o prawach autorskich dla skryptu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Description

Opis skryptu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ExternalModuleDependencies

Lista zależności modułów zewnętrznych wykonanych przez ten skrypt.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ExternalScriptDependencies

Lista zależności skryptów zewnętrznych wykonanych przez ten skrypt.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Force

Wymusza zastąpienie dowolnego istniejącego pliku przez polecenie cmdlet.

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Guid

Unikatowy identyfikator skryptu w formacie GUID. Jeśli nie podasz identyfikatora GUID, polecenie cmdlet automatycznie utworzy nowe.

Typ:Guid
Position:Named
Domyślna wartość:Randomly generated
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-IconUri

Identyfikator URI (Uniform Resource Identifier) wskazujący ikonę skojarzona ze skryptem.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-LicenseUri

Identyfikator URI wskazujący plik umowy licencyjnej skojarzony ze skryptem.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Path

Nazwa pliku i lokalizacja, w której został utworzony skrypt.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PrivateData

Dane prywatne skojarzone ze skryptem.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ProjectUri

Identyfikator URI wskazujący witrynę projektu skojarzona ze skryptem.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ReleaseNotes

Informacje o wersji skryptu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-RequiredModules

Parametr przyjmuje tablicę tabel skrótów specyfikacji modułu. Specyfikacja modułu jest tabelą skrótu zawierającą następujące klucze.

  • ModuleName - Wymagane Określa nazwę modułu.
  • GUID - Opcjonalne Określa identyfikator GUID modułu.
  • Jest to również wymagane , aby określić co najmniej jeden z trzech poniższych kluczy.
    • ModuleVersion — Określa minimalną akceptowalną wersję modułu.
    • MaximumVersion - Określa maksymalną akceptowalną wersję modułu.
    • RequiredVersion — Określa dokładną, wymaganą wersję modułu. Nie można jej używać z innymi kluczami wersji.
Typ:Hashtable[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-RequiredScripts

Lista skryptów wymaganych przez skrypt.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Tags

Tagi skojarzone ze skryptem. Wartości tagów to ciągi, które nie powinny zawierać spacji. Aby uzyskać więcej informacji, zobacz Szczegóły tagu.

Typ:String[]
Aliasy:Tag
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Version

Wersja skryptu. Jeśli żadna wartość nie zostanie podana , wartość domyślna1.0.0.0wersji to .

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

None

Dane wyjściowe

Object

Uwagi

Polecenia New-PSScriptFileInfo cmdlet i Update-PSScriptFileInfo umieszczają #requires instrukcje dla wymaganych modułów między blokami pomocy opartymi na <#PSScriptInfo komentarzach i pliku pomocy. Oczekuje Get-PSScriptFileInfo się, że instrukcje #requires zostaną umieszczone gdzieś przed blokiem pomocy opartej na komentarzach. Wszystkie #requires instrukcje umieszczone po bloku pomocy opartej na komentarzach są ignorowane przez Get-PSScriptFileInfo i Publish-PSResource.