Condividi tramite


New-IseSnippet

Crea un frammento di codice di Windows PowerShell ISE.

Sintassi

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

Descrizione

Il New-ISESnippet cmdlet crea un testo riutilizzabile "frammento" per Windows PowerShell I edizione Standard. È possibile usare i frammenti di codice per aggiungere testo al riquadro di script o di comandi 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 di codice predefiniti. Il New-ISESnippet cmdlet consente di creare frammenti personalizzati da aggiungere alla raccolta predefinita. È possibile visualizzare, cambiare, aggiungere, eliminare e condividere i file di frammenti di codice, nonché includerli in moduli di Windows PowerShell. Per visualizzare i frammenti di codice in Windows PowerShell I edizione Standard, dal menu Modifica selezionare Avvia frammenti o premere CTRL+J.

Il New-ISESnippet cmdlet crea un <Title>.Snippets.ps1xml file nella $HOME\Documents\WindowsPowerShell\Snippets directory con il titolo specificato. Per includere un file di frammenti di codice in un modulo da creare, aggiungerlo in 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 limitati o AllSigned.

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

Esempio 1: Creare un frammento di guida basato su commenti

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 $HOME\Documents\WindowsPowerShell\SnippetsFrammenti di codice dell'utente.

Esempio 2: Creare un frammento di codice obbligatorio

$M = @'
Param
(
  [parameter(Mandatory=$true)]
  [String[]]
  $<ParameterName>
)
'@

New-ISESnippet -Text $M -Title Mandatory -Description "Adds a mandatory function parameter." -Author "Patti Fuller, Fabrikam Corp." -Force

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

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

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

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

Parametri

-Author

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

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

-CaretOffset

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

Type:Int32
Position:Named
Default value:0
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters: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.

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

-Text

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

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

-Title

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

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

Input

None

Non è possibile inviare tramite pipe oggetti a questo cmdlet.

Output

None

Questo cmdlet non restituisce output.

Note

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

Se si usa il New-IseSnippet cmdlet in una sessione con restrizioni o 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 non firmati creati dall'utente), cambiare 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 I edizione Standard.
  • 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 "$psise. Comando Options.ShowDefaultSnippets=$false".
  • È possibile creare un frammento con lo stesso nome di un frammento predefinito. Entrambi i frammenti di codice verranno visualizzati nel menu corrispondente di Windows PowerShell ISE.