Compartir a través de


New-IseSnippet

Crea un fragmento de código de Windows PowerShell ISE.

Sintaxis

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

Description

El cmdlet New-ISESnippet crea un "fragmento de código" de texto reutilizable para Windows PowerShell ISE. Puede usar fragmentos de código para agregar texto al panel Script o al panel Comandos en Windows PowerShell ISE. Este cmdlet solo está disponible en Windows PowerShell ISE.

A partir de Windows PowerShell 3.0, Windows PowerShell ISE incluye una colección de fragmentos de código integrados. El cmdlet New-ISESnippet le permite crear sus propios fragmentos de código para agregar a la colección integrada. Puede ver, cambiar, agregar, eliminar y compartir archivos de fragmento de código e incluirlos en módulos de Windows PowerShell. Para ver fragmentos de código en Windows PowerShell ISE, en el menú Editar de, seleccione Iniciar fragmentos de código o presione CTRL+J.

El cmdlet New-ISESnippet crea un archivo <Title>.Snippets.ps1xml en el directorio $HOME\Documents\WindowsPowerShell\Snippets con el título que especifique. Para incluir un archivo de fragmento de código en un módulo que está creando, agregue el archivo de fragmento de código a un subdirectorio Fragmentos de código del directorio del módulo.

No se pueden usar fragmentos de código creados por el usuario en una sesión en la que la directiva de ejecución está restringido o AllSigned.

Este cmdlet se introdujo en Windows PowerShell 3.0.

Ejemplos

Ejemplo 1: Crear un fragmento de código de ayuda de Comment-Based

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

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

Este comando crea un fragmento de código de Comment-BasedHelp para Windows PowerShell ISE. Crea un archivo denominado Comment-BasedHelp.snippets.ps1xml en el directorio Fragmentos de código del usuario $HOME\Documents\WindowsPowerShell\Snippets.

Ejemplo 2: Crear un fragmento de código obligatorio

$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

En este ejemplo se crea un fragmento de código denominado obligatorio para Windows PowerShell ISE. El primer comando guarda el texto del fragmento de código en la variable $M. El segundo comando usa el cmdlet New-ISESnippet para crear el fragmento de código. El comando usa el parámetro Force para sobrescribir un fragmento de código anterior con el mismo nombre.

Ejemplo 3: Copiar un fragmento de código obligatorio de una carpeta a una carpeta de destino

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

Este comando usa el cmdlet Copy-Item para copiar el fragmento de código obligatorio de la carpeta donde New-ISESnippet lo coloca en el recurso compartido de archivos Server\Share.

Parámetros

-Author

Especifica el autor del fragmento de código. El campo autor aparece en el archivo de fragmento de código, pero no aparece al hacer clic en el nombre del fragmento de código en Windows PowerShell ISE.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-CaretOffset

Especifica el carácter del texto del fragmento de código en el que este cmdlet coloca el cursor. Escriba un entero que represente la posición del cursor, con "1" que representa el primer carácter de texto. El valor predeterminado, 0 (cero), coloca el cursor inmediatamente antes del primer carácter del texto. Este parámetro no aplica sangría al texto del fragmento de código.

Tipo:Int32
Posición:Named
Valor predeterminado:0
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Description

Especifica una descripción del fragmento de código. El valor de descripción aparece al hacer clic en el nombre del fragmento de código en Windows PowerShell ISE. Este parámetro es obligatorio.

Tipo:String
Posición:2
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Force

Indica que este cmdlet sobrescribe los archivos de fragmento de código con el mismo nombre en la misma ubicación. De forma predeterminada, New-ISESnippet no sobrescribe archivos.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Text

Especifica el valor de texto que se agrega al seleccionar el fragmento de código. El texto del fragmento de código aparece al hacer clic en el nombre del fragmento de código en Windows PowerShell ISE. Este parámetro es obligatorio.

Tipo:String
Posición:3
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Title

Especifica un título o un nombre para el fragmento de código. El título también denomina el archivo de fragmento de código. Este parámetro es obligatorio.

Tipo:String
Posición:1
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

None

Este cmdlet no devuelve ninguna salida.

Notas

New-IseSnippet almacena nuevos fragmentos de código creados por el usuario en archivos de .ps1xml sin firmar. Por lo tanto, Windows PowerShell no puede agregarlos a una sesión en la que la directiva de ejecución se AllSigned o Restringido. En una sesión de Restricted o AllSigned, puede crear, obtener e importar fragmentos de código sin firmar creados por el usuario, pero no puede usarlos en la sesión.

Si usa el cmdlet New-IseSnippet en un restringido o sesión de AllSigned, se crea el fragmento de código, pero aparece un mensaje de error cuando Windows PowerShell intenta agregar el fragmento de código recién creado a la sesión. Para usar el nuevo fragmento de código (y otros fragmentos de código creados por el usuario sin firmar), cambie la directiva de ejecución y, a continuación, reinicie Windows PowerShell ISE.

Para obtener más información sobre las directivas de ejecución de Windows PowerShell, vea about_Execution_Policies.

  • Para cambiar un fragmento de código, edite el archivo de fragmento de código. Puede editar archivos de fragmento de código en el panel Script de Windows PowerShell ISE.
  • Para eliminar un fragmento de código que agregó, elimine el archivo de fragmento de código.
  • No puede eliminar un fragmento de código integrado, pero puede ocultar todos los fragmentos de código integrados mediante el comando "$psISE.Options.ShowDefaultSnippets=$false".
  • Puede crear un fragmento de código que tenga el mismo nombre que un fragmento de código integrado. Ambos fragmentos de código aparecen en el menú de fragmentos de código de Windows PowerShell ISE.