Interfaz de línea de comandos


Una interfaz de línea de comandos ( CLI ) procesa los comandos de un programa de computadora en forma de líneas de texto. El programa que maneja la interfaz se llama intérprete de línea de comandos o procesador de línea de comandos . Los sistemas operativos implementan una interfaz de línea de comandos en un shell para el acceso interactivo a las funciones o servicios del sistema operativo. Este acceso se proporcionó principalmente a los usuarios mediante terminales de computadora a partir de mediados de la década de 1960, y continuó utilizándose durante las décadas de 1970 y 1980 en VAX / VMS , sistemas Unix y sistemas de computadoras personales, incluidos DOS , CP / My Apple DOS .

Hoy en día, muchos usuarios confían en las interfaces gráficas de usuario y las interacciones basadas en menús. Sin embargo, algunas tareas de programación y mantenimiento pueden no tener una interfaz gráfica de usuario y aún pueden usar una línea de comando.

Las alternativas a la interfaz de línea de comandos incluyen menús de interfaz de usuario basados ​​en texto (por ejemplo, IBM AIX SMIT ), atajos de teclado y varias metáforas de escritorio centradas en el puntero (generalmente controladas con un mouse ). Ejemplos de esto incluyen Microsoft Windows, DOS Shell y Mouse Systems PowerPanel. Las interfaces de línea de comandos a menudo se implementan en dispositivos terminales que también son capaces de interfaces de usuario basadas en texto orientadas a la pantalla que utilizan el direccionamiento del cursor para colocar símbolos en una pantalla de visualización.

Muchos sistemas de software implementan interfaces de línea de comandos para control y operación. Esto incluye entornos de programación y programas de utilidad.

En comparación con una interfaz gráfica de usuario, una interfaz de línea de comandos requiere menos recursos del sistema para implementar. Dado que las opciones de los comandos se dan en unos pocos caracteres en cada línea de comando, un usuario experimentado a menudo puede encontrar las opciones más fáciles de acceder. La automatización de tareas repetitivas se simplifica mediante la edición de líneas y los mecanismos de historial para almacenar secuencias de uso frecuente; esto puede extenderse a un lenguaje de scripting que puede tomar parámetros y opciones variables. Se puede mantener un historial de la línea de comandos, lo que permite revisar o repetir los comandos.

Un sistema de línea de comandos puede requerir manuales impresos o en línea para la referencia del usuario, aunque a menudo una opción de "ayuda" proporciona una revisión concisa de las opciones de un comando. Es posible que el entorno de línea de comandos no proporcione mejoras gráficas como fuentes diferentes o ventanas de edición extendidas que se encuentran en una GUI. Puede resultar difícil para un nuevo usuario familiarizarse con todos los comandos y opciones disponibles, en comparación con los iconos y menús desplegables de una interfaz gráfica de usuario, sin una referencia repetida a los manuales.


Captura de pantalla de una sesión Bash de muestra en GNOME Terminal 3, Fedora 15
Captura de pantalla de Windows PowerShell 1.0, que se ejecuta en Windows Vista
Una interfaz gráfica de usuario con iconos y ventanas ( GEM 1.1 Desktop )
CommandShell de Apple Computer en A / UX 3.0.1
GUI de GNU Octave con interfaz de línea de comandos
Interacción del shell Bourne en la versión 7 de Unix
Indicación de un BBC Micro después del encendido o restablecimiento completo
Una línea de comandos de MS-DOS, que ilustra el análisis sintáctico en comandos y argumentos.
El final de la salida del comando HELP de RT-11SJ mostrado en un VT100
Un teclado de teleimpresora ASR Teletype Modelo 33 con lector de cinta perforada y perforadora
Terminal DEC VT52