Ir al contenido principal

CmdLet y Variables en Powershell

Comenzando con los CmdLet en Powershell



En este post voy a explicar que son los "command-let" de forma clara y concisa. Por favor si me faltaron cosas de explicar o no entiendes algo por alguna razón déjame los comentarios.


Los Cmdlet ("command-let") son una herramienta simple de línea de comandos de una sola función incluida en el shell, cuya finalidad es manipular objetos (Siempre debemos recordar que todo en Windows Powershell es un objeto o se puede convertir en tal). La mayoría de los CmdLets son muy simples y están diseñados para utilizarlos en combinación con otros. Su  estructura es “Verbo-Sustantivo” para una fácil memorización, osea comienzan con un verbo en mayúsculas separados por un guion medio de un sustantivo que también comienza con mayúsculas, con solo leerlos una vez podremos identificar que es lo que hacen. Están en ingles pero en español serian algo como Cambiar-Valor, Actualizar-Ayuda, Leer-Contenido, etc. Pero veamos algunos ejemplos reales.


1.      #Get: obtener
Ø  Get-help
Ø  Get-Alias
Ø  Get-Date
2.      #Set: establecer
Ø  Set-ExecutionPolicy
Ø  Set-Item
Ø  Set-Service
3.      #Out: salida
Ø  Out-Printer
Ø  Out-File
Ø  Out-Null
4.      #Format: formato de salida
Ø  Format-List
Ø  Format-Table

Ø  Format-Wide

Su estructura es muy simple pero si no entendiste aca va una explicación los cmdlets "get" sólo recuperan datos y no alteran el contenido de ningún tipo de objeto o estructura, un ejemplo facil es "Get-Date" que obtiene la fecha y la mostrara en pantalla.


Get-Date
domingo, 26 de julio de 2015 10:21:41 p.m.


Los cmdlets "set" establecen o cambian datos, ejemplo vamos a cambiar la fecha al 6 de Julio de 2031.

Set-Date 06/07/2031
domingo, 06 de julio de 2031 12:00:00 a.m.

Los proximos cmdlets los voy a explicar mas adelante pero por ahora a modo de ejemplo solo vamos a ir diciendo que hacen
"format" sólo formatean datos de salida de otros cmdlets, por lo cual no se puede usar solo, se debe usar en conjunto con otro anterior.
Los cmdlets "out" sólo dirigen la salida a un destino especificado, osea a pantalla, a un archivo, a papel, a otra computadora, o incluso a internet.

Todo esto no es ni siquiera es el principio, ya que Windows Powershell tiene sus CmdLets pero también módulos que se pueden instalar con mas CmdLets como por ejemplo el de Active Directory, Bitlocker, Módulo de la tecnología Intel vPro para Windows Powershell, y muchísimos mas pueden tener otras empresa como VMWare, Veam Backup, de SQL, seguramente estos módulos seguirán creciendo.
 

Volviendo al tema, es posible que los cmdlets de Powershell tengan parámetros obligatorios y opcionales. Si falta un parámetro obligatorio, el sistema le solicitará que lo introduzca. Si falta un parámetro opcional, PowerShell utilizará el valor predeterminado.

A modo de ejemplo veremos algunos parámetros de Get-Process

  Get-Process -Name chrome -ComputerName -FileVersionInfo -Module -Verbose

       Get-Process -Id 4024 -Debug -OutVariable -PipelineVariable


Hagamos un vistaso de todo esto en modo gráfico, esto nos ayudara a fijar los contenidos de lo antes leído.





No se olviden de comentar, o darme feed-back para saber si estoy haciendo bien el curso, asi como si les gusto darle +1 de google+ o me gusta en facebook o tambien pueden compartir el contenido.
Saludos.


Otros temas

Arreglos en Windows powershell

Que son los Arreglos en Windows PowerShell Para entender posteriores tutoriales y poderlos utilizar sabiendo que estamos haciendo vamos a hablar y sacarnos las principales dudas de los arreglos / array en Windows PowerShell. Podemos imaginarlo como una zona continua para almacenamiento de datos o un conjunto de variables una detrás de la otra, pero en realidad es algo más que eso, por lo cual veamos cómo se definen en general los arreglos tanto en programación como en Windows PowerShell. En Programación (En general) Es un espacio de memoria que permite almacenar una colección de elementos, todos del mismo tipo. En PowerShell Es una forma de almacenamiento de datos que permite que más de un elemento sea almacenado en una variable (No es necesario que los elementos sean del mismo tipo). Veámoslo en una imagen La siguiente imagen representa un espacio de memoria (o “cero” en la imagen) al cual se le puede asignar contenido de datos, luego de este espaci

Objetos en Windows PowerShell

Los Objetos en Windows PowerShell Vamos a empezar aclarando algunos conceptos básicos para poder entender más a fondo este tema. Primero   ¿Que son los Objetos o que entendemos cuando decimos que algo es un objeto? Una definición que podría darse es la siguiente: El objeto es algo sobre lo cual actúa el sujeto, está sometido a la acción de éste, y puede ser material, cuando se puede ver y tocar, o ser un objeto inmaterial si solo existente como idea. En programación es algo similar y se debe aclarar que un objeto no es un dato simple (o dato plano),  sino que contiene en su interior cierto número de componentes bien estructurados. Cada objeto no es un ente aislado, sino que forma parte de una organización jerárquica o de otro tipo. Un objeto es una pieza de software única que posee ciertas características (atributos o propiedades) y un comportamiento u operaciones previamente determinadas (métodos o funciones).Aclaremos esto: Atributos: estos son lo

Manejo de Variables en PowerShell

2 parte de Variables en Windows PowerShell Esta es la segunda parte del tutorial de donde vamos a ver un poco del manejo de las variables, como listarlas, eliminarlas y realizar algunas operaciones con ellas.  Como podemos ver todas las variables?   Tanto las que nosotros creamos como las que no la podemos listar con los siguientes comandos: Get-Variable o Dir   v ariable:    ("Dir" es un alias de Get-ChildItem) Otro ejemplo es  Dir   v ariable:  \prueb*  (Con esto listamos las variables que comiencen con los caracteres "prueb")   Con estos comandos podremos obtener una lista de todas las variables. Para obtener una lista de las variables de sistema podremos hacer esto Get-ChildItem  env:    (Lista de variables de entorno)   Por ejemplo: Windir, appdata, etc. Un punto a tener en cuenta al momento de crear una variable son es tas palabras que son de uso reservado y no se pueden utilizar como nombre de variables: Break continue do