Condividi tramite


New-IseSnippet

Crea un frammento di codice ISE di Windows PowerShell.

Sintassi

Default (impostazione predefinita).

New-IseSnippet
    [-Title] <String>
    [-Description] <String>
    [-Text] <String>
    [-Author <String>]
    [-CaretOffset <Int32>]
    [-Force]
    [<CommonParameters>]

Descrizione

Il cmdlet New-ISESnippet crea un testo riutilizzabile "frammento" per Windows PowerShell ISE. È possibile usare frammenti di codice per aggiungere testo al riquadro Script o al riquadro Comando in Windows PowerShell ISE. Questo cmdlet è disponibile solo in Windows PowerShell ISE.

A partire da Windows PowerShell 3.0, Windows PowerShell ISE include una raccolta di frammenti predefiniti. Il cmdlet New-ISESnippet consente di creare frammenti personalizzati da aggiungere alla raccolta predefinita. È possibile visualizzare, modificare, aggiungere, eliminare e condividere file di frammenti di codice e includerli nei moduli di Windows PowerShell. Per visualizzare frammenti di codice in Windows PowerShell ISE, dal menu Modifica selezionare Start Snippets o premere CTRL+J.

Il cmdlet New-ISESnippet crea un file <Title>.Snippets.ps1xml nella directory $HOME\Documents\WindowsPowerShell\Snippets con il titolo specificato. Per includere un file di frammento di codice in un modulo creato, aggiungere il file di frammento di codice a una sottodirectory Snippets della directory del modulo.

Non è possibile usare frammenti di codice creati dall'utente in una sessione in cui i criteri di esecuzione sono con restrizioni o AllSigned.

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

Esempio 1: Creare un frammento della Guida Comment-Based

New-IseSnippet -Title Comment-BasedHelp -Description "A template for comment-based help." -Text "<#
    .SYNOPSIS

    .DESCRIPTION
    .PARAMETER  <Parameter-Name>
    .INPUTS
    .OUTPUTS
    .EXAMPLE
    .LINK
#>"

Questo comando crea un frammento di codice Comment-BasedHelp per Windows PowerShell ISE. Crea un file denominato Comment-BasedHelp.snippets.ps1xml nella directory Frammenti di codice dell'utente $HOME\Documents\WindowsPowerShell\Snippets.

Esempio 2: Creare un frammento di codice obbligatorio

$M = @'
param
(
  [Parameter(Mandatory=$true)]
  [string[]]
  $<ParameterName>
)
'@

$snippet = @{
    Text = $M
    Title = 'Mandatory'
    Description = 'Adds a mandatory function parameter.'
    Author = 'Patti Fuller, Fabrikam Corp.'
    Force = $true
}
New-ISESnippet @snippet

Questo esempio crea un frammento denominato obbligatorio per Windows PowerShell ISE. Il primo comando salva il testo del frammento nella variabile $M. Il secondo comando usa il cmdlet New-ISESnippet per creare il frammento di codice. Il comando usa il parametro Force per sovrascrivere un frammento precedente con lo stesso nome.

Esempio 3: Copiare un frammento obbligatorio da una cartella in una cartella di destinazione

$path = "$HOME\Documents\WindowsPowerShell\Snippets\Mandatory.Snippets.ps1xml"
$destination = "\\Server\Share"
Copy-Item -Path $path -Destination $destination

Questo comando usa il cmdlet Copy-Item per copiare il frammento di obbligatorio dalla cartella in cui New-ISESnippet lo inserisce nella condivisione file Server\Share.

Parametri

-Author

Specifica l'autore del frammento di codice. Il campo autore viene visualizzato nel file del frammento di codice, ma non viene visualizzato quando si fa clic sul nome del frammento in Windows PowerShell ISE.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-CaretOffset

Specifica il carattere del testo del frammento di codice su cui il cmdlet posiziona il cursore. Immettere un numero intero che rappresenta la posizione del cursore, con "1" che rappresenta il primo carattere di testo. Il valore predefinito, 0 (zero), posiziona il cursore immediatamente prima del primo carattere di testo. Questo parametro non rientra nel testo del frammento di codice.

Proprietà dei parametri

Tipo:Int32
Valore predefinito:0
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Description

Specifica una descrizione del frammento di codice. Il valore della descrizione viene visualizzato quando si fa clic sul nome del frammento di codice in Windows PowerShell ISE. Questo parametro è obbligatorio.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:2
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Force

Indica che questo cmdlet sovrascrive i file di frammento con lo stesso nome nella stessa posizione. Per impostazione predefinita, New-ISESnippet non sovrascrive i file.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Text

Specifica il valore di testo aggiunto quando si seleziona il frammento. Il testo del frammento di codice viene visualizzato quando si fa clic sul nome del frammento in Windows PowerShell ISE. Questo parametro è obbligatorio.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:3
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Title

Specifica un titolo o un nome per il frammento di codice. Il titolo denomina anche il file del frammento di codice. Questo parametro è obbligatorio.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:1
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

None

Questo cmdlet non restituisce alcun output.

Note

New-IseSnippet archivia nuovi frammenti di codice creati dall'utente in file di .ps1xml non firmati. Di conseguenza, Windows PowerShell non può aggiungerli a una sessione in cui il criterio di esecuzione è AllSigned o limitato. In una sessione di con restrizioni o AllSigned è possibile creare, ottenere e importare frammenti non firmati creati dall'utente, ma non è possibile usarli nella sessione.

Se si usa il cmdlet New-IseSnippet in un con restrizioni o sessione di AllSigned, viene creato il frammento di codice, ma viene visualizzato un messaggio di errore quando Windows PowerShell tenta di aggiungere il frammento di codice appena creato alla sessione. Per usare il nuovo frammento di codice (e altri frammenti di codice creati dall'utente non firmati), modificare i criteri di esecuzione e quindi riavviare Windows PowerShell ISE.

Per altre informazioni sui criteri di esecuzione di Windows PowerShell, vedere about_Execution_Policies.

  • Per modificare un frammento di codice, modificare il file di frammento di codice. È possibile modificare i file di frammento di codice nel riquadro Script di Windows PowerShell ISE.
  • Per eliminare un frammento di codice aggiunto, eliminare il file del frammento di codice.
  • Non è possibile eliminare un frammento predefinito, ma è possibile nascondere tutti i frammenti predefiniti usando il comando "$psISE.Options.ShowDefaultSnippets=$false".
  • È possibile creare un frammento con lo stesso nome di un frammento predefinito. Entrambi i frammenti di codice vengono visualizzati nel menu del frammento di codice in Windows PowerShell ISE.