Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

powershell00

Los sistemas operativos se han fusionado con las interfaces gráficas. Por ejemplo, cuando salió Windows, ésta era una interfaz que se corría sobre MS-DOS.

Uno la invocaba usando un comando. Sin embargo, en algún momento Microsoft decidió que la interfaz estuviese presente en todo momento cuando uno encendía la computadora y entonces digamos que nació algo así como un sistema operativo Windows.

Sin embargo, Microsoft mantuvo una conexión -por decirlo de alguna manera- con MS-DOS y había manera de invocar una sesión a modo de consola o terminal.

De esta manera, se podían ejeuctar archivos “batch”, por ejemplo, que eran normalmente scripts con comandos de MS-DOS y que permitían hacer algunas funciones de manera automática como, por ejemplo, copiar directorios completos invocando el script correcto.

Desde luego que esto se podía hacer desde el explorador de Windows, pero en muchos casos, para la mayoría de los programadores, los comandos de la terminal hacían la tarea de manera más rápida y satisfactoria.

Por otra parte, tenemos los sistemas basados en Unix, en donde hay un modo terminal y en donde se tiene uno o más lenguajes de scripts muy poderosos. Quizá buscando emular esta posibilidad, Microsoft decidió a partir del año 2000 en adelante crear un modo terminal que fuese mucho más poderoso que el modo terminal existente.

Así, en 2003 nació MONAD, cuyo nombre cambió oficialmente para el 25 de abril del 2006. Diez años después Microsoft hizo público el código de lo que se llama hoy en día PowerShell (el cual está en GitHub).

PowerShell 4.0 requiere la instalación del framework llamado .NET, versión 2.0. Sin embargo, no hay que preocuparse de saber si se tiene, porque viene incluido junto con la versión Windows Vista en adelante. Se incluye desde luego en las versiones 7, 8 y 10. Windows 2008 Server R1 tiene PowerShell instalado.

Cabe decir que PowerShell puede no sólo interactuar directamente con el sistema operativo, sino que puede usar programas de Microsoft como SQL Server o Exchange, entre otros. La idea finalmente detrás de PowerShell es automatizar muchas tareas administrativas de los usuarios.

PowerShell es todo un lenguaje de programación, en donde se incluyen declaración de variables, operadores matemáticos, desigualdades, manejo de vectores, ciclos, procedimientos, etcétera. Vamos, estamos hablando de un lenguaje por derecho propio. De alguna manera es el lenguaje Perl de Unix pero en Windows, escrito además por Microsoft.

Pero quizá la característica más importante de PowerShell es que es un intérprete de comandos orientado a objetos. La información de entrada y de salida en cada etapa del proceso (cmdlet, “comándulo”) es un conjunto de instancias de objeto, a diferencia de lo que ocurre con los intérpretes de comandos tradicionales, que sólo devuelven y reciben texto.

Hay muchos lugares en la red para aprender por mano propia lo que puede hacer PowerShell por los usuarios. Vale la pena intentar ver su poder si usted como usuario requiere automatizar tareas y salirse del fenómeno de la interfaz gráfica que, en muchas ocasiones, le mete una carga extra al procesador y hace mucho más lentos los procesos. Vea las referencias al respecto.

Referencias: PowerShell – referencia rápida (en inglés)PowerShell.org 

Desde la Red…
Comentarios