Significado de Comando en Informática

Como forma de interacción, los comandos pueden rescatarnos cuando el sistema está colapsado

¿Qué es un comando?

Un comando no es otra cosa que dictar una orden capaz de ser interpretada y procesada por el lenguaje informático, teniendo una importancia a nivel de interacción con la PC, y con el tiempo relegado a la configuración y optimización para acceder a los bastidores de la performance, generalmente listos para salvarnos cuando el sistema colapsa.

Historia y evolución desde los primeros comandos

Aunque pueda parecernos que la línea de comandos -y, por ende, los comandos mismos- es la forma más antigua de interaccionar con una computadora, esto no es así.

Las primeras computadoras se programaban directamente sobre su hardware, mediante interruptores, se entraban datos mediante fichas perforadas, y salían de la misma forma tras la ejecución de todos los cálculos. Es decir, uno introducía los datos tras programar el hardware, accionaba lo que tuviera que accionar para que funcionara, y esperaba pacientemente el resultado de la ejecución.

Esta forma de trabajar no puede ser considerada interactiva, que es algo prácticamente inherente a la línea de comandos.

A caballo entre las décadas de los 50 y los 60, se empezaron a utilizar teletipos para dar la salida de los datos, mientras que la entrada se producía, mediante comandos, por el teclado del mismo teletipo. A la par, también se empezaron a utilizar monitores, y es en este contexto cuando debemos situar el despegue de la línea de comandos como interfaz preferida.

Cada tipo de computadora (lo que hoy llamaríamos “plataforma informática”) tenía su propio sistema operativo y, por ende, su intérprete de comandos, y sus comandos, si bien muchos se parecían o eran, directamente, idénticos.

Los sistemas operativos que unificarían en gran medida las líneas de comando y que, a la postre, delimitarían las grandes plataformas, fueron Unix (nacido en 1973), y DOS (nacido en 1980).

El primero fue un estándar que dio lugar a diversas variaciones de la plataforma, compatibles a nivel de comandos y con la posibilidad de reutilizar código fuente para recompilar las mismas aplicaciones, de forma que si bien no había compatibilidad a nivel binario, sí la había en cuanto al nivel de usuario, es decir: que una persona que había aprendido Unix en la versión de un fabricante, podría adaptarse fácil y rápidamente a la de otro.

El actual GNU/Linux es un heredero de Unix que dispone de una línea de comandos compatible con aquel.

Por parte del MS-DOS, inicialmente fue una copia para procesadores 8086 y 8088 del sistema CP/M, que adquirió Microsoft y que equipó al primer IBM PC. A partir de aquí, como Microsoft tenía sus derechos de comercialización, e IBM no había blindado legalmente la posibilidad de crear hardware compatible con el suyo, se cimentó el dominio de Microsoft ya que el resto de los fabricantes necesitaban su sistema para disponer de una máquina 100% compatible con el IBM PC.

Con el advenimiento de los entornos gráficos, la línea de comando entró en decadencia como forma de interacción del usuario para con la máquina. El Mac OS clásico (antes del Mac OS X) ya no incluía una línea de comandos.

Actualmente, todos los sistemas operativos disponen de intérprete de comandos, que se abre en una ventana dentro del entorno gráfico, o bien como única interfaz en el caso de problemas con la instalación del sistema.

Función de la línea de comandos

Para abrir una ventana con una línea de comandos y poder trabajar con ella, debemos buscar el icono de la aplicación correspondiente a la línea de comandos de la siguiente forma:


  • En Windows: podemos optar por la forma más rápida, que es introduciendo el texto CMD en el cuadro de búsqueda, con lo que nos saldrá un único resultado consistente en un icono que parece un cuadro negro en el que hay algo escrito en blanco. O bien podemos optar por buscar su icono, llamado “Símbolo del sistema”.

  • En macOS: tendremos que ir a la carpeta de aplicaciones y, en esta, buscar el icono Terminal que está en la carpeta Utilidades.

  • En Linux o Unix: cada distribución puede ser un caso diferente de las demás, pero en general hay que buscar un icono en las utilidades del sistema llamado “intérprete de comandos” o “línea de comandos”.

Diferencia entre comandos internos y externos

En la práctica del MS-DOS se distinguen dos clasificaciones, una a nivel interno que implica que la ejecución de los mismos puede llevarse a cabo en cualquier momento, independientemente si está cargado o no el MS-DOS porque actúan en la memoria, y un otro grupo denominado de nivel externo, porque necesitan que el sistema cargue los archivos correspondientes para que su funcionalidad tenga efecto.

Ejemplos para entender su valoración

Para utilizar correctamente la línea de comandos, debemos memorizar una serie de comandos, órdenes, instrucciones para proporcionar al sistema. Esto dista mucho de ser intuitivo, a diferencia de la interfaz gráfica, que es casi auto-explicativa. Entonces ¿por qué se utiliza?

La línea de comandos ofrece la posibilidad de concatenar órdenes, de forma que el resultado de una, su salida, es la entrada de la siguiente, cosa que con un entorno gráfico es imposible de conseguir.

Además, podemos aplicar órdenes en grupo a una serie de archivos o procesos de una forma más fácil y rápida que con el entorno de ventanas. Y podemos parametrizar el comando, de forma que modificaremos su ejecución a gusto con una flexibilidad que no podemos obtener con el entorno gráfico.

Por ejemplo, la orden para listar los ficheros de un directorio en MS-DOS es DIR. Mediante modificadores, podemos solicitar que nos liste todos los ficheros .exe del directorio programas:

C:\> DIR *.EXE C:\PROGRAMAS

En Unix/Linux, por ejemplo, la instrucción equivalente es ls, y podemos cambiarla mediante modificadores para ver los ficheros ocultos y su tamaño:

$ ls -as