Buscar..


Introducción

PowerShell ofrece una variedad de variables "automáticas" (incorporadas) útiles. Algunas variables automáticas solo se completan en circunstancias especiales, mientras que otras están disponibles globalmente.

$ PSScriptRoot

Get-ChildItem -Path $PSScriptRoot

Este ejemplo recupera la lista de elementos secundarios (directorios y archivos) de la carpeta donde reside el archivo de script.

La variable automática $PSScriptRoot es $null si se usa desde fuera de un archivo de código de PowerShell. Si se utiliza dentro de un script de PowerShell, definió automáticamente la ruta del sistema de archivos completamente calificado al directorio que contiene el archivo de script.

En Windows PowerShell 2.0, esta variable solo es válida en módulos de script (.psm1). A partir de Windows PowerShell 3.0, es válido en todos los scripts.

$ Args

$Args

Contiene una matriz de parámetros no declarados y / o valores de parámetros que se pasan a una función, secuencia de comandos o bloque de secuencia de comandos. Cuando crea una función, puede declarar los parámetros usando la palabra clave param o agregando una lista de parámetros separados por comas entre paréntesis después del nombre de la función.

En una acción de evento, la variable $ Args contiene objetos que representan los argumentos de evento del evento que se está procesando. Esta variable se llena solo dentro del bloque de acción de un comando de registro de eventos. El valor de esta variable también se puede encontrar en la propiedad SourceArgs del objeto PSEventArgs (System.Management.Automation.PSEventArgs) que devuelve Get-Event.

$ PSItem

Get-Process | ForEach-Object -Process { 
  $PSItem.Name
}

Igual que $_ . Contiene el objeto actual en el objeto de canalización. Puede utilizar esta variable en comandos que realizan una acción en cada objeto o en objetos seleccionados en una tubería.

PS

Get-Process -Name doesnotexist
Write-Host -Object "Was the last operation successful? $?"

Contiene el estado de ejecución de la última operación. Contiene VERDADERO si la última operación tuvo éxito y FALSO si falló.

$ error

Get-Process -Name doesnotexist
Write-Host -Object ('The last error that occurred was: {0}' -f $error[0].Exception.Message)

Contiene una matriz de objetos de error que representan los errores más recientes. El error más reciente es el primer objeto de error en la matriz ($ Error [0]).

Para evitar que un error se agregue a la matriz $ Error, use el parámetro común ErrorAction con un valor de Ignorar. Para obtener más información, consulte about_CommonParameters ( http://go.microsoft.com/fwlink/?LinkID=113216) .



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow