Udostępnij za pośrednictwem


New-ScriptFileInfo

Tworzy plik skryptu z metadanymi.

Składnia

New-ScriptFileInfo
   [[-Path] <String>]
   [-Version <String>]
   [-Author <String>]
   -Description <String>
   [-Guid <Guid>]
   [-CompanyName <String>]
   [-Copyright <String>]
   [-RequiredModules <Object[]>]
   [-ExternalModuleDependencies <String[]>]
   [-RequiredScripts <String[]>]
   [-ExternalScriptDependencies <String[]>]
   [-Tags <String[]>]
   [-ProjectUri <Uri>]
   [-LicenseUri <Uri>]
   [-IconUri <Uri>]
   [-ReleaseNotes <String[]>]
   [-PrivateData <String>]
   [-PassThru]
   [-Force]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Opis

Polecenie New-ScriptFileInfo cmdlet tworzy plik skryptu programu PowerShell, w tym metadane dotyczące skryptu.

W przykładach do przekazywania parametrów do New-ScriptFileInfo polecenia cmdlet są używane narzędzia splatting. Aby uzyskać więcej informacji, zobacz about_Splatting.

Przykłady

Przykład 1. Tworzenie pliku skryptu i określanie jego wersji, autora i opisu

W tym przykładzie tworzony jest plik skryptu, a jego zawartość jest wyświetlana w konsoli programu PowerShell.

$Parms = @{
  Path = "C:\Test\Temp-Scriptfile.ps1"
  Version = "1.0"
  Author = "pattif@contoso.com"
  Description = "My test script file description goes here"
  }
New-ScriptFileInfo @Parms
Get-Content -Path C:\Test\Temp-Scriptfile.ps1

<#PSScriptInfo

.VERSION 1.0

.GUID 3bb10ee7-38c1-41b9-88ea-16899164fc19

.AUTHOR pattif@contoso.com

.COMPANYNAME

.COPYRIGHT

.TAGS

.LICENSEURI

.PROJECTURI

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

.PRIVATEDATA

#>

<#

.DESCRIPTION
 My test script file description goes here

#>
Param()

Polecenie New-ScriptFileInfo cmdlet używa narzędzia splatting w celu skonfigurowania kilku parametrów skryptu. Ścieżka ustawia lokalizację i nazwę skryptu. Wersja określa numer wersji skryptu. Autor to adres e-mail osoby, która utworzyła skrypt. Opis wyjaśnia przeznaczenie skryptu.

Po utworzeniu skryptu użyj parametru Path w Get-Content celu zlokalizowania skryptu. Zawartość skryptu jest wyświetlana w konsoli programu PowerShell.

Przykład 2. Testowanie pliku skryptu

W tym przykładzie są testowane metadane skryptu utworzonego w przykładzie 1 .

Test-ScriptFileInfo -Path C:\Test\Temp-Scriptfile.ps1

Version   Name                  Author               Description
-------   ----                  ------               -----------
1.0       Temp-Scriptfile       pattif@contoso.com   My test script file description goes here

Polecenie Test-ScriptFileInfo cmdlet używa parametru Path , aby określić lokalizację pliku skryptu.

Przykład 3. Tworzenie pliku skryptu ze wszystkimi właściwościami metadanych

W tym przykładzie użyto narzędzia splatting w celu utworzenia pliku skryptu o nazwie New-ScriptFile.ps1 zawierającego wszystkie jego właściwości metadanych. Pełny parametr określa, że pełne dane wyjściowe są wyświetlane podczas tworzenia skryptu.

$Parms = @{
 Path = "C:\Test\New-ScriptFile.ps1"
 Verbose = $True
 Version = "1.0"
 Author = "pattif@contoso.com"
 Description = "My new script file test"
 CompanyName = "Contoso Corporation"
 Copyright = "2019 Contoso Corporation. All rights reserved."
 ExternalModuleDependencies = "ff","bb"
 RequiredScripts = "Start-WFContosoServer", "Stop-ContosoServerScript"
 ExternalScriptDependencies = "Stop-ContosoServerScript"
 Tags = @("Tag1", "Tag2", "Tag3")
 ProjectUri = "https://contoso.com"
 LicenseUri = "https://contoso.com/License"
 IconUri = "https://contoso.com/Icon"
 PassThru = $True
 ReleaseNotes = @("Contoso script now supports the following features:",
   "Feature 1",
   "Feature 2",
   "Feature 3",
   "Feature 4",
   "Feature 5")
 RequiredModules =
   "1",
   "2",
   "RequiredModule1",
   @{ModuleName="RequiredModule2";ModuleVersion="1.0"},
   @{ModuleName="RequiredModule3";RequiredVersion="2.0"},
   "ExternalModule1"
 }
New-ScriptFileInfo @Parms

VERBOSE: Performing the operation "Creating the 'C:\Test\New-ScriptFile.ps1'
  PowerShell Script file" on target "C:\Test\New-ScriptFile.ps1".

<#PSScriptInfo

.VERSION 1.0

.GUID 4fabe8c7-7862-45b1-a72e-1352a433b77d

.AUTHOR pattif@contoso.com

.COMPANYNAME Contoso Corporation

.COPYRIGHT 2019 Contoso Corporation. All rights reserved.

.TAGS Tag1 Tag2 Tag3

.LICENSEURI https://contoso.com/License

.PROJECTURI https://contoso.com/

.ICONURI https://contoso.com/Icon

.EXTERNALMODULEDEPENDENCIES ff,bb

.REQUIREDSCRIPTS Start-WFContosoServer,Stop-ContosoServerScript

.EXTERNALSCRIPTDEPENDENCIES Stop-ContosoServerScript

.RELEASENOTES
Contoso script now supports the following features:
Feature 1
Feature 2
Feature 3
Feature 4
Feature 5

.PRIVATEDATA

#>

#Requires -Module 1
#Requires -Module 2
#Requires -Module RequiredModule1
#Requires -Module @{ModuleName = 'RequiredModule2'; ModuleVersion = '1.0'}
#Requires -Module @{RequiredVersion = '2.0'; ModuleName = 'RequiredModule3'}
#Requires -Module ExternalModule1

<#

.DESCRIPTION
 My new script file test

#>
Param()

Parametry

-Author

Określa autora skryptu.

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

-CompanyName

Określa firmę lub dostawcę, który utworzył skrypt.

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

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia New-ScriptFileInfo.

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

Określa oświadczenie o prawach autorskich dla skryptu.

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

-Description

Określa opis skryptu.

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

-ExternalModuleDependencies

Określa tablicę zależności modułu zewnętrznego.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExternalScriptDependencies

Określa tablicę zależności skryptu zewnętrznego.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.

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

-Guid

Określa unikatowy identyfikator skryptu.

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

-IconUri

Określa adres URL ikony skryptu. Określona ikona jest wyświetlana na stronie internetowej galerii dla skryptu.

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

-LicenseUri

Określa adres URL postanowień licencyjnych.

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

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie New-ScriptFileInfo nie generuje żadnych danych wyjściowych.

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

-Path

Określa lokalizację, w której jest zapisywany plik skryptu.

Type:String
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PrivateData

Określa dane prywatne dla skryptu.

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

-ProjectUri

Określa adres URL strony internetowej dotyczącej tego projektu.

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

-ReleaseNotes

Określa tablicę ciągów zawierającą informacje o wersji lub komentarze, które mają być dostępne dla użytkowników tej wersji skryptu.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredModules

Określa moduły, które muszą być w stanie sesji globalnej. Jeśli wymagane moduły nie są w stanie sesji globalnej, program PowerShell je zaimportuje.

Type:Object[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredScripts

Określa tablicę wymaganych skryptów.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tags

Określa tablicę tagów.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Version

Określa wersję skryptu.

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

-WhatIf

Pokazuje, co się stanie w przypadku New-ScriptFileInfo uruchomienia. Polecenie cmdlet nie jest uruchamiane.

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

Dane wejściowe

String

Dane wyjściowe

Object