jueves, 12 de enero de 2012

PowerShell Variables de Entorno


Cuando creamos un script muchas veces tenemos la necesidad de hacerlo flexible, que sea capaz de ejecutarse en múltiples equipos, en entornos que no conocemos, no simplemente crear un flujo fijo, en el que cada detalle debe ser parametrizado para que el script sea utilizable.

En el camino de la flexibilidad nos encontramos con una característica que ha estado presente en los sistemas operativos desde el origen de los tiempos, las muy conocidas "Variables de Entorno" que vienen a ser algo asi como "Información del Sistema" que esta disponible para ser consultada.

Entre la información que podemos encontrar en las variables de entorno esta la clásica "path", que nos provee una lista de directorios en los cuales el sistema (o interprete de comandos) busca por los archivos ejecutables.

tambien podemos encontrar la variable "temp" que nos provee la ruta de la carpeta para almacenar archivos temporales del sistema, asi como otras menos comunes para averiguar por ejemplo

la arquitectura del cpu
la versión del sistema operativo
el nombre del usuario
el nombre del host
la carpeta home del usuario actual

en PowerShell podemos acceder a las variables de entorno haciendo uso de la coleccion "$env:nombre_variable" y podemos iterar sobre todas las variables usando "env:", en el video se muestra la salida típica en Windows 7  de 64bits.