En una mañana de martes de la sesión en TechEd 2006, el arquitecto del software de Microsoft Jeffrey Snover , demostró la primera release de la línea de comando de Windows ahora llamada PowerShell, a veces todavía designado como Monad. Allí, él reveló a la multitud que es una meta de diseño que PowerShell funcione como el proveedor de comando para todas las herramientas del administrador de Windows, incluyendo Microsoft Management Console.
«Lo hemos diseñado de tal forma que todos los administradores de GUI pueden ser puestos en una capa en el tope de la línea de comando», indicó Snover. Imaginate que puedes ahora hacer cualquier cosa con el MMC, y pudiendo lograr esto con comandos verbales y scripting más que desconectando en un sinfin de cajas de diálogo – click ACEPTAR, click ACEPTAR, click ACEPTAR, subir, click derecho, …
PowerShell es siendo dirigido a ser la principal herramienta de la línea de comando para Windows Vista y el servidor «Longhorn», aunque actualmente, Microsoft no tiene planes para enviarlo como un componente de un sistema operativo. En vez de eso, hará a PowerShell disponible libremente (como lo hace para la versión RC1 actualmente) a través de la Web en el site de la compañía.
Si la declaración de Snover significa que PowerShell eventualmente servirá como el manejador de comandos para administración GUI, eso es algo confuso, y probablemente dependerá de varios factores. Pero la arquitectura subyacente estará allí, así que esto puede hacer subir a otras divisiones de Microsoft y determinar que todo «encaje» , lo cual provee actualmente de funcionalidad gráfica a los admins en el Windows Server, tendrá la opción de cambiarse al PowerShell como su «motor.» Es ciertamente factible.
Mucho dependerá de la buena voluntad de los admins de aprender completamente un nuevo concepto de comandos. Como se ha dicho anteriormente, PowerShell no se basa del todo en DOS, ni en el shell de Korn que es popular entre admins de UNIX y Linux.
«PowerShell es una herramienta nueva. Estoy pidiendo que invirtieras tu tiempo y esfuerzo de aprender esta herramienta nueva. Los invito a preguntar con increible respeto. Sé que son gente ocupada. Sé que trabajan mucho, y no tienen el tiempo tratar de esta materia… lo cuál significa que, yo intentaré aprender un conjunto mínimo de [comandos], y cuándo ya sepa algo, voy a utilizarlos una y otra vez de modo que tu inversión en tiempo valga.»
Un ejemplo del largo camino para desarrollar «Monad», Snover confesó, está en colocar el verbo stop. Mientras que PowerShell tiene un léxico muy prolijo (que va de ambas maneras, si has visto su página get-help para un comando), utiliza realmente un mínimo de palabras para lograr esto. Históricamente, las líneas de comando han utilizado términos múltiples para significar poner fin algo – con procesos desarrollándose, ha sido «kill» o «delete» o «remove». PowerShell utilizó stop; y como Snover explicó ayer, el plan de su equipo es utilizar solamente ese verbo cuando algo necesita ser terminado.
Por ejemplo, el comando stop-process (o cmdlet, pronunciado «command-let») hará un proceso tal como Notepad a un «screeching halt», mientras que stop-service terminará el funcionamiento de un servicio del OS. Es decir, a menos que utilices el switch whatif para ver simplemente cuál sería de antemano los efectos de detener un proceso, antes de hacerlo realmente.
En resumen, PowerShell no está basado ni en DOS ni en Korn, por lo que ni los que estén aconstumbrados a Unix/linux ni los de Windows/MS-DOS no tendrán costumbre sobre su uso y por lo tanto tendremos que gastar algo de tiempo en aprender de nuevo como funciona (seguro que saldrán tutoriales interesantes en varias webs). Por ejemplo hasta ahora teníamos varios vocábulos para detener una tarea: «kill», «delete» o «remove.» ahora sólo habrá uno y será «stop».
Nota del Editor:
Publicaciones de prueba