En el principio… fue la línea de comandos

El título es el de un ensayo de Neal Stephenson – autor conocido por sus obras de ficción cyberpunk, y transmite un mensaje claro: las interfaces gráficas son un invento reciente. Cuando los primeros ordenadores dejaron atrás las tarjetas perforadas aparecieron los primeros terminales, sistemas de introducción de comandos mediante un teclado alfanumérico.

El dúo de teclado y tubo de rayos catódicos (CRT) supuso una revolución: el programador podía interaccionar con la máquina sin esperas, observando los resultados en pantalla, ahorrando tiempo y esfuerzos en comparación con los métodos anteriores.

LLa línea de comandos de Windows XPa interfaz de los primeros sistemas operativos, como UNIX, consistió durante muchos años en una línea de comandos que esperaba órdenes introducidas por el usuario; habría que esperar hasta los años ochenta para asistir a la consolidación de las primeras interfaces gráficas de usuario (GUI).

Los mismos programas, mediante el uso de modificadores y parámetros, se utilizaban escribiendo su nombre y pulsando la tecla Intro. Esta forma de interaccionar con la máquina goza aún de gran popularidad entre los usuarios de los múltiples sabores de Linux, UNIX y BSD, y también ha hecho su aparición en Mac OS desde la aparición de la versión X.

¿Y en Windows? Los usuarios más veteranos recordarán MS-DOS, el primer sistema operativo de Microsoft. Basado en una línea de comandos primitiva, su indicador de sistema (prompt) tenía este aspecto inicial:

C:\>_

MS-DOS incluía una serie de comandos esenciales para administrar ficheros y directorios, como DIR (que listaba todo el contenido de un directorio), DEL (para borrar elementos) o COPY (para copiarlos). Considerando que su objetivo eran los ordenadores personales, la interfaz carecía de la sofisticación de las líneas de comando de UNIX. Sin demasiadas modificaciones, la línea de comandos de Microsoft siguió siendo la misma incluso tras la aparición de Windows 95.

Ahora bien, ¿por qué utilizar una línea de comandos cuando todas las operaciones pueden llevarse a cabo rodeados de ventanitas y fondos de pantalla molones? Si bien hay distintas escuelas de pensamiento al respecto, la respuesta más inmediata radica en la potencia y precisión de los comandos de texto – que se utilizan incluso en programas matemáticos e intérpretes de lenguajes de programación.

A través de un solo comando el usuario puede realizar una operación compleja que requeriría de muchos clics en una interfaz gráfica. Entorno favorito de administradores de sistema y programadores, la línea de comandos puede sacarnos de más de un apuro con solo teclear palabras.

PowerShell en acciónSegún sus detractores, la línea de comandos de Windows – comparada con la de otros sistemas operativos, carece de potencia y elegancia, cuenta con comandos limitados y apenas cumple con su propósito.

¿Cuál puede ser la solución? La primera de ellas es Windows PowerShell, una nueva línea de comandos desarrollada por Microsoft, con más de 130 comandos y una sintaxis mejorada. Podemos imaginar PowerShell como un MS-DOS “cachas” (si se consigue soportar tan turbadora imagen).

Mientras que con la línea de comandos clásica sólo pueden usarse ficheros de proceso por lotes muy básicos (los conocidos .BAT), PowerShell admite scripts, auténticas cadenas de comandos complejos que pueden facilitar en gran medida la administración del sistema. Es aconsejable usarlo junto a PowerGUI, una interfaz gráfica y editor de scripts que se integra a la perfección con PowerShell.

La otra opción, especialmente recomendada a quien ya ha tenido un contacto con Linux o UNIX, es la emulación de interfaces o el uso de ejecutables de comandos UNIX compilados para funcionar bajo Windows. En el primer caso nos encontramos con el popular Cygwin, una colección de librerías y herramientas que recrea un entorno similar a UNIX en nuestro propio ordenador sin necesidad de cambiar de sistema operativo. También existen alternativas como Win-BaSh – que carece de aplicaciones, al ser únicamente una conversión de la consola BaSh (lo cual limita mucho su utilidad).

Si por otro lado preferimos seguir usando la línea de comando clásica disponiendo de herramientas más potentes, podemos probar UnxUtils o The Berkeley Utilities, dos colecciones de comandos clásicos de UNIX. Para mayor comodidad pueden copiarse en una ruta como \Windows\System32 para tenerlos siempre a mano. Y si os interesan: leed el manual de cada comando. Aunque estén diseñados para evitar pifias, son aplicaciones muy potentes, con las cuales no conviene juguetear demasiado.

Enlaces

Cargando comentarios