Quadfold

Páginas: 9 (2157 palabras) Publicado: 19 de marzo de 2015
Referencia rápida del lenguaje de Windows PowerShell

Compatibilidad nativa con distintos sistemas de tipos
Windows PowerShell adapta los objetos WMI, XML, ASDI, ADO y COM para proporcionar una sintaxis común que permite obtener acceso a sus propiedades y métodos.
Ejemplo
$g = Get-WmiObject Win32_Process
$g[0].Name # en lugar de $g[0].Properties[“Name”]

Operadores aritméticos binarios
+Suma, concatenación
-
Resta
*
Multiplicación, repetición de cadenas
/
División
%
Módulo


Operaciones con matrices
Determinar si esta matriz contiene el número 3
1,2,3,5,3,2 –contains 3

Devolver todos los elementos que son iguales a 3:
1,2,3,5,3,2 –eq 3

Devolver todos los elementos que son menores que 3:
1,2,3,5,3,2 –lt 3

Comprobar si el número 2 está en el conjunto:
if (1, 3, 5 –contains 2) …Otros operadores: -gt, -le, -ge, -ne

Matrices
“a”,“b”,”c”
Matriz de cadenas
1,2,3
Matriz de enteros
@()
Matriz vacía
@(2)
Matriz de 1 elemento
1,(2,3),4
Matriz dentro de otra matriz
,”hola”
Matriz de un elemento
$a[5]
Sexto elemento de la matriz*
$a[2][3]
Tercer o cuarto

elemento de la matriz
$a[2..20]
Devuelve los elementos comprendidos entre el tercero y el vigésimo primero (ambos incluidos)Las matrices tienen base cero.

Operadores de asignación
=, +=, -=, *=, /=, %=


Matrices asociativas (tablas hash)
$hash = @{ }
Crea una tabla hash vacía
$h =@{foo=1;bar=2}
Crea e inicializa una tabla hash
$hash.clave1 = 1
Asigna el valor 1 a la clave “clave1”
$hash.clave1
Devuelve el valor de clave1
$hash["clave1"]
Devuelve el valor de clave1

Operadores y valores booleanos
TRUE
FALSE
$TRUE$FALSE
Cualquier cadena de longitud > 0 excepto la palabra “false”
Cadena vacía o la cadena “false”
Cualquier número != 0
Cualquier número = 0
Matriz de más de 1 elemento
Matriz de 0 elementos
Matriz cuyo único elemento es TRUE
Matriz cuyo único elemento es FALSE
Una referencia a cualquier objeto
Valor NULL

Break (uso en scripts)
El comando break permite salir de un bucle. Puede usar una ETIQUETAopcional para interrumpir el bucle.
Ejemplo:
while (1)
{ $a = valor
if ($a –eq 1) break;
}

Operadores de expansión de comandos
$( )
Devuelve un valor NULL
$(1,2,3)
Devuelve una matriz que contiene los elementos 1,2,3.
$(Get-Alias a*)
Devuelve el resultado de evaluar la expresión
@(Get-Alias;Get-Process)
Ejecuta los dos comandos y devuelve los resultados en una matriz

Comentarios
#Esto es un comentario porque # es el primer carácter de un símbolo (token)
$a = “#Esto no es un comentario…”
$a = “un valor” # …pero esto sí lo es.
Write-Host Hello#world

Operadores de comparación
-eq
Igual a
-ne
Distinto de
-gt –ge
Mayor que, mayor o igual que
-lt –le
Menor que, menor o igual que

Puede anteponerse “c” para que las operaciones distingan mayúsculas de minúsculas o “i” para queno lo hagan (por ejemplo, –ceq )
Continue (uso en scripts)
La instrucción continue pasa a la siguiente iteración de un bucle sin salir de él. Ejemplo:
while (1)
{ $a = valor
if ($a –eq 1) (continue)
# No se llega a esta línea a menos que $a == 1
}
# Nunca se llega a esta línea.
Agregar un punto al comienzo
Al agregar un punto al comienzo, se pueden ejecutar funciones, bloques descript y scripts en el ámbito actual en lugar de hacerlo en el ámbito local. Ejemplo:
. MiFunción

Si MiFunción define una variable, ésta se define en el ámbito actual y no en el ámbito local de la función.
$a = {$x = Get-Process | Select –First 2}
. $a #Evalúa el bloque de script en el ámbito actual

Secuencias de escape
El carácter de escape de Windows PowerShell es el acento grave (`). Paraconvertir un carácter en un literal, basta con anteponer `. Para especificar un carácter ` literal, utilice ``.
Secuencias de escape especiales
`0
(NULL)
`a
(alerta)
`b
(retroceso)
`f
(avance de página)
`n
(nueva línea)
`r
(retorno de carro)
`t
(tabulación)
`v
(comilla vertical)


Orden de ejecución
Windows PowerShell intenta resolver los comandos en el orden siguiente: alias, funciones,...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS