Compartir a través de


Acerca de CommonParameters

DESCRIPCIÓN BREVE

Describe los parámetros que se pueden usar con cualquier cmdlet.

DESCRIPCIÓN LARGA

Los parámetros comunes son un conjunto de parámetros de cmdlet que puede usar con cualquier cmdlet. Se implementan mediante PowerShell, no por el desarrollador de cmdlets, y están disponibles automáticamente para cualquier cmdlet.

Puede usar los parámetros comunes con cualquier cmdlet, pero es posible que no tengan ningún efecto en todos los cmdlets. Por ejemplo, si un cmdlet no genera ninguna salida detallada, el uso del parámetro común Detallado no tiene ningún efecto.

Los parámetros comunes también están disponibles en funciones avanzadas que usan el atributo CmdletBinding o el atributo Parameter , y en todos los flujos de trabajo.

Varios parámetros comunes invalidan los valores predeterminados o preferencias del sistema que se establecen mediante las variables de preferencia de PowerShell. A diferencia de las variables de preferencia, los parámetros comunes solo afectan a los comandos en los que se usan.

Además de los parámetros comunes, muchos cmdlets ofrecen los parámetros whatIf y Confirm risk mitigation. Los cmdlets que implican riesgos para el sistema o para los datos de usuario suelen ofrecer estos parámetros.

En la lista siguiente se muestran los parámetros comunes. Sus alias se muestran entre paréntesis.

  • Debug (db)
  • ErrorAction (ea)
  • ErrorVariable (ev)
  • InformationAction (infa)
  • InformationVariable (iv)
  • OutVariable (ov)
  • OutBuffer (ob)
  • PipelineVariable (pv)
  • Detallado (vb)
  • WarningAction (wa)
  • WarningVariable (wv)

Los parámetros de mitigación de riesgos son:

  • WhatIf (wi)
  • Confirmar (cf)

Para obtener más información, consulte about_Preference_Variables.

DESCRIPCIONES COMUNES DE PARÁMETROS

Depuración

El alias de Depuración es db.

Muestra detalles de nivel de programador sobre la operación realizada por el comando . Este parámetro solo funciona cuando el comando genera un mensaje de depuración. Por ejemplo, este parámetro funciona cuando un comando contiene el Write-Debug cmdlet .

El parámetro Debug invalida el valor de la $DebugPreference variable para el comando actual, estableciendo el valor de $DebugPreference en Continue. Dado que el valor predeterminado de la $DebugPreference variable es SilentlyContinue, los mensajes de depuración no se muestran de forma predeterminada.

-Debug:$true tiene el mismo efecto que -Debug. Use -Debug:$false para suprimir la presentación de mensajes de depuración cuando $DebugPreference no sea SilentlyContinue, que es el valor predeterminado.

ErrorAction

El alias de ErrorAction es ea.

Determina cómo responde el cmdlet a un error de no terminación del comando . Este parámetro solo funciona cuando el comando genera un error de no terminación, como los del Write-Error cmdlet .

El parámetro ErrorAction invalida el valor de la $ErrorActionPreference variable para el comando actual. Dado que el valor predeterminado de la $ErrorActionPreference variable es Continue, se muestran los mensajes de error y la ejecución continúa a menos que use el parámetro ErrorAction .

El parámetro ErrorAction no tiene ningún efecto en los errores de terminación (como datos que faltan, parámetros que no son válidos o permisos insuficientes) que impiden que un comando se complete correctamente.

-ErrorAction:Continue muestra el mensaje de error y continúa ejecutando el comando. Continue es el valor predeterminado.

-ErrorAction:Ignore suprime el mensaje de error y continúa ejecutando el comando. A diferencia de SilentlyContinue, Ignore no agrega el mensaje de error a la $Error variable automática. El valor Ignore se introduce en PowerShell 3.0.

-ErrorAction:Inquire muestra el mensaje de error y le pide confirmación antes de continuar la ejecución. Este valor rara vez se usa.

-ErrorAction:SilentlyContinue suprime el mensaje de error y continúa ejecutando el comando.

-ErrorAction:Stop muestra el mensaje de error y deja de ejecutar el comando.

-ErrorAction:Suspend no se admite en PowerShell Core, ya que solo está disponible para los flujos de trabajo.

Nota

El parámetro ErrorAction invalida, pero no reemplaza el valor de la $ErrorAction variable de preferencia cuando se usa el parámetro en un comando para ejecutar un script o una función.

ErrorVariable

El alias de ErrorVariable es ev.

ErrorVariable almacena mensajes de error sobre el comando en la variable especificada y en la $Error variable automática. Para obtener más información, escriba el siguiente comando:

Get-Help about_Automatic_Variables

De forma predeterminada, los nuevos mensajes de error sobrescriben los mensajes de error que ya están almacenados en la variable . Para anexar el mensaje de error al contenido de la variable, escriba un signo más (+) antes del nombre de la variable.

Por ejemplo, el siguiente comando crea la $a variable y, a continuación, almacena los errores en ella:

Get-Process -Id 6 -ErrorVariable a

El comando siguiente agrega los mensajes de error a la $a variable :

Get-Process -Id 2 -ErrorVariable +a

El siguiente comando muestra el contenido de $a:

$a

Puede usar este parámetro para crear una variable que contenga solo mensajes de error de comandos específicos. La $Error variable automática contiene mensajes de error de todos los comandos de la sesión. Puede usar la notación de matriz, como $a[0] o $error[1,2] para hacer referencia a errores específicos almacenados en las variables.

InformationAction

El alias de InformationAction es ia.

Se introdujo en PowerShell 5.0. Dentro del comando o script en el que se usa, el parámetro común InformationAction invalida el valor de la $InformationPreference variable de preferencia, que de forma predeterminada se establece en SilentlyContinue. Cuando se usa Write-Information en un script con InformationAction, Write-Information los valores se muestran en función del valor del parámetro InformationAction . Para obtener más información sobre $InformationPreference, vea about_Preference_Variables.

-InformationAction:Stop detiene un comando o script en una aparición del Write-Information comando.

-InformationAction:Ignore suprime el mensaje informativo y continúa ejecutando el comando . A diferencia de SilentlyContinue, Ignore olvida completamente el mensaje informativo; no agrega el mensaje informativo al flujo de información.

-InformationAction:Inquire muestra el mensaje informativo que especifique en un Write-Information comando y, a continuación, pregunta si desea continuar.

-InformationAction:Continue muestra el mensaje informativo y continúa ejecutándose.

-InformationAction:Suspend no se admite en PowerShell Core, ya que solo está disponible para los flujos de trabajo.

-InformationAction:SilentlyContinue no se muestra ningún efecto, ya que el mensaje informativo no se muestra (valor predeterminado) y el script continúa sin interrupción.

Nota

El parámetro InformationAction invalida, pero no reemplaza el valor de la $InformationAction variable de preferencia cuando se usa el parámetro en un comando para ejecutar un script o una función.

InformationVariable

El alias de InformationVariable es iv.

Se introdujo en PowerShell 5.0. Dentro del comando o script en el que se usa, el parámetro común InformationVariable almacena en una variable una cadena que especifique agregando el Write-Information comando . Write-Information los valores se muestran en función del valor del parámetro común InformationAction ; Si no agrega el parámetro común InformationAction , Write-Information las cadenas se muestran en función del valor de la $InformationPreference variable de preferencia. Para obtener más información sobre $InformationPreference, vea about_Preference_Variables.

OutBuffer

El alias de OutBuffer es ob y toma un valor System.Int32 .

Determina el número de objetos que se van a acumular en un búfer antes de que se envíen objetos a través de la canalización. Si omite este parámetro, los objetos se envían a medida que se generan.

Este parámetro de administración de recursos está diseñado para usuarios avanzados. Cuando se usa este parámetro, PowerShell envía datos al siguiente cmdlet en lotes de OutBuffer + 1.

En el ejemplo siguiente se alternan las pantallas entre los ForEach-Object bloques de proceso que usan el Write-Host cmdlet . La presentación alterna en lotes de 2 o OutBuffer + 1.

1..4 | ForEach-Object {
        Write-Host "$($_): First"; $_
      } -OutBuffer 1 | ForEach-Object {
                        Write-Host "$($_): Second" }
1: First
2: First
1: Second
2: Second
3: First
4: First
3: Second
4: Second

OutVariable

El alias de OutVariable es ov.

Almacena los objetos de salida del comando en la variable especificada además de enviar la salida a lo largo de la canalización.

Para agregar la salida a la variable, en lugar de reemplazar cualquier salida que ya se pueda almacenar allí, escriba un signo más (+) antes del nombre de la variable.

Por ejemplo, el siguiente comando crea la $out variable y almacena el objeto de proceso en él:

Get-Process PowerShell -OutVariable out

El siguiente comando agrega el objeto process a la $out variable :

Get-Process iexplore -OutVariable +out

El comando siguiente muestra el contenido de la $out variable:

$out

Nota

La variable creada por el parámetro OutVariable es .[System.Collections.ArrayList]

PipelineVariable

El alias de PipelineVariable es pv y toma un valor de cadena .

PipelineVariable almacena el valor del elemento de canalización actual como una variable, para cualquier comando con nombre a medida que fluye a través de la canalización.

Los valores válidos son cadenas, igual que para los nombres de variable.

A continuación se muestra un ejemplo de cómo funciona PipelineVariable . En este ejemplo, el parámetro PipelineVariable se agrega a un Foreach-Object comando para almacenar los resultados del comando en variables. Un intervalo de números, de 1 a 10, se canalizan al primer Foreach-Object comando, los resultados de los cuales se almacenan en una variable denominada Left.

Los resultados del primer Foreach-Object comando se canalizan a un segundo Foreach-Object comando, que filtra los objetos devueltos por el primer Foreach-Object comando. Los resultados del segundo comando se almacenan en una variable denominada Right.

En el tercer Foreach-Object comando, los resultados de los dos Foreach-Object primeros comandos canalizaciones, representados por las variables Izquierda y Derecha, se procesan mediante un operador de multiplicación. El comando indica a los objetos almacenados en las variables Left y Right que se van a multiplicar y especifica que los resultados deben mostrarse como "Left range member * Right range member = product".

1..10 | Foreach-Object -PipelineVariable Left -Process { $_ } |
  Foreach-Object -PV Right -Process { 1..10 } |
  Foreach-Object -Process { "$Left * $Right = " + ($Left*$Right) }
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4
1 * 5 = 5
...

Verbose

El alias de Verbose es vb.

Muestra información detallada sobre la operación realizada por el comando. Esta información es similar a la información de un seguimiento o en un registro de transacciones. Este parámetro solo funciona cuando el comando genera un mensaje detallado. Por ejemplo, este parámetro funciona cuando un comando contiene el Write-Verbose cmdlet .

El parámetro Verbose invalida el valor de la $VerbosePreference variable para el comando actual. Dado que el valor predeterminado de la $VerbosePreference variable es SilentlyContinue, los mensajes detallados no se muestran de forma predeterminada.

-Verbose:$true tiene el mismo efecto que -Verbose

-Verbose:$false suprime la presentación de mensajes detallados. Use este parámetro cuando el valor de $VerbosePreference no sea SilentlyContinue (valor predeterminado).

WarningAction

El alias de WarningAction es wa.

Determina cómo responde el cmdlet a una advertencia del comando . Continue es el valor predeterminado. Este parámetro solo funciona cuando el comando genera un mensaje de advertencia. Por ejemplo, este parámetro funciona cuando un comando contiene el Write-Warning cmdlet .

El parámetro WarningAction invalida el valor de la $WarningPreference variable para el comando actual. Dado que el valor predeterminado de la $WarningPreference variable es Continue, se muestran advertencias y la ejecución continúa a menos que use el parámetro WarningAction .

-WarningAction:Continue muestra los mensajes de advertencia y continúa ejecutando el comando. Continue es el valor predeterminado.

-WarningAction:Inquire muestra el mensaje de advertencia y le pide confirmación antes de continuar con la ejecución. Este valor rara vez se usa.

-WarningAction:SilentlyContinue suprime el mensaje de advertencia y continúa ejecutando el comando.

-WarningAction:Stop muestra el mensaje de advertencia y deja de ejecutar el comando.

Nota

El parámetro WarningAction invalida, pero no reemplaza el valor de la $WarningAction variable de preferencia cuando se usa el parámetro en un comando para ejecutar un script o una función.

WarningVariable

El alias de WarningVariable es wv.

Almacena advertencias sobre el comando en la variable especificada.

Todas las advertencias generadas se guardan en la variable incluso si las advertencias no se muestran al usuario.

Para anexar las advertencias al contenido de la variable, en lugar de reemplazar las advertencias que podrían estar almacenadas allí, escriba un signo más (+) antes del nombre de la variable.

Por ejemplo, el siguiente comando crea la $a variable y, a continuación, almacena las advertencias en ella:

Get-Process -Id 6 -WarningVariable a

El siguiente comando agrega cualquier advertencia a la $a variable :

Get-Process -Id 2 -WarningVariable +a

El siguiente comando muestra el contenido de $a:

$a

Puede usar este parámetro para crear una variable que contenga solo advertencias de comandos específicos. Puede usar la notación de matriz, como $a[0] o $warning[1,2] para hacer referencia a advertencias específicas almacenadas en la variable.

Nota

El parámetro WarningVariable no captura advertencias de llamadas anidadas en funciones o scripts.

Descripciones de parámetros de administración de riesgos

WhatIf

El alias de WhatIf es wi.

Muestra un mensaje que describe el efecto del comando, en lugar de ejecutar el comando.

El parámetro WhatIf invalida el valor de la $WhatIfPreference variable para el comando actual. Dado que el valor predeterminado de la $WhatIfPreference variable es 0 (deshabilitado), el comportamiento whatIf no se realiza sin el parámetro WhatIf . Para obtener más información, escriba el siguiente comando:

Get-Help about_Preference_Variables

-WhatIf:$true tiene el mismo efecto que -WhatIf.

-WhatIf:$false suprime el comportamiento automático de WhatIf que da como resultado cuando el valor de la $WhatIfPreference variable es 1.

Por ejemplo, el siguiente comando usa el -WhatIf parámetro en un Remove-Item comando:

Remove-Item Date.csv -WhatIf

En lugar de quitar el elemento, PowerShell enumera las operaciones que haría y los elementos que se verían afectados. Este comando genera el siguiente resultado:

What if: Performing operation "Remove File" on
Target "C:\ps-test\date.csv".

Confirm

El alias de Confirm es cf.

Le solicita confirmación antes de ejecutar el comando.

El parámetro Confirm invalida el valor de la $ConfirmPreference variable para el comando actual. El valor predeterminado es true. Para obtener más información, escriba el siguiente comando:

Get-Help about_Preference_Variables

-Confirm:$true tiene el mismo efecto que -Confirm.

-Confirm:$false suprime la confirmación automática, que se produce cuando el valor de $ConfirmPreference es menor o igual que el riesgo estimado del cmdlet.

Por ejemplo, el siguiente comando usa el parámetro Confirm con un Remove-Item comando . Antes de quitar el elemento, PowerShell enumera las operaciones que haría y los elementos que se verían afectados y solicita su aprobación.

PS C:\ps-test> Remove-Item tmp*.txt -Confirm

Confirm
Are you sure you want to perform this action?
Performing operation "Remove File" on Target " C:\ps-test\tmp1.txt
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend
[?] Help (default is "Y"):

Las opciones confirmar respuesta son las siguientes:

Response Resultado
Sí (Y) Realice la acción.
Sí a todos (A) Realizar todas las acciones y suprimir las consultas Confirm posteriores
para este comando.
No (N): No realice la acción.
No a todos (L): No realice ninguna acción y suprima la confirmación posterior
consulta para este comando.
Suspender (S): Pause el comando y cree una sesión temporal.
Ayuda (?) Mostrar ayuda para estas opciones.

La opción Suspender coloca el comando en espera y crea una sesión anidada temporal en la que puede trabajar hasta que esté listo para elegir una opción Confirmar . El símbolo del sistema de la sesión anidada tiene dos símbolos de intercalación adicionales (>>) para indicar que es una operación secundaria del comando primario original. Puede ejecutar comandos y scripts en la sesión anidada. Para finalizar la sesión anidada y volver a las opciones Confirmar para el comando original, escriba "exit".

En el ejemplo siguiente, la opción Suspender (S) se usa para detener temporalmente un comando mientras el usuario comprueba la ayuda de un parámetro de comando. Después de obtener la información necesaria, el usuario escribe "exit" para finalizar el aviso anidado y, a continuación, selecciona la respuesta Sí (y) a la consulta Confirmar.

PS C:\ps-test> New-Item -ItemType File -Name Test.txt -Confirm

Confirm
Are you sure you want to perform this action?

Performing operation "Create File" on Target "Destination:
C:\ps-test\test.txt".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default
is "Y"): s

PS C:\ps-test> Get-Help New-Item -Parameter ItemType

-ItemType <string>
Specifies the provider-specified type of the new item.

Required?                    false
Position?                    named
Default value
Accept pipeline input?       true (ByPropertyName)
Accept wildcard characters?  false

PS C:\ps-test> exit

Confirm
Are you sure you want to perform this action?
Performing operation "Create File" on Target "Destination: C:\ps-test\test
.txt".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (defau
lt is "Y"): y

Directory: C:\ps-test

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---         8/27/2010   2:41 PM          0 test.txt

PALABRAS CLAVE

about_Common_Parameters

CONSULTE TAMBIÉN

about_Preference_Variables

Write-Debug

Write-Warning

Write-Error

Write-Verbose