Lallinia d'órdenes (inglés:command-line interface,CLI) ye unmétodu que dexa a los usuarios dar instrucciones a dalgúnprograma informáticu per mediu d'una llinia de testu simple. Tien De notase que los conceutos de CLI,shell yemulador de terminal nun son lo mesmo yá queCLI ye un <o>método</o> ente queshell y emulador de terminal son <o>programes informáticos</o>. Sicasí los trés suelen utilizase como sinónimos.
Esta interfaz esiste casi dende los empiezos de la computación, superada n'antigüedá solo polestarxetes furaes y mecanismos similares. Esisten pa diversos programes y sistemes operativos, pa diversuhardware, y con distinta funcionalidad.
La contraparte de CLI ye lainterfaz gráfica d'usuariu (GUI) qu'ufierta una estética ameyorada y una mayor simplificación, a cuenta de un mayor consumu de recursos computacionales, y, polo xeneral, d'un amenorgamientu de la funcionalidad algamable. Coles mesmes apaez el problema d'una mayorvulnerabilidá dada la so complexidá.
Les CLI son usaes por munchos programadores y alministradores de sistemes como ferramienta primario de trabayu, especialmente en sistemes operativos basaos enUnix; en redolaes científiques y d'inxeniería, y un subconxuntu más pequeñu d'usuarios domésticos avanzaos.
En dispositivos portátiles yPDA, les CLI nun s'utilicen, por cuenta de lo complexo que resulta ingresar datos de testu, o pola ausencia total deteclaos.
Nos primeros años de los ordenadores, y mientres la era de los ordenadores denominaosmainframes, el control de la execución de los programes facer dende llugares especiales (de normal allugaos cerca del ordenador en sales con aire acondicionáu), onde l'alministrador manipoliaba direutamente la máquina.
Teletipu
Escribíase la orde nel tecláu y recibíase la respuesta impresa en papel. Estos sistemes basaos en teletipos dieron orixe a la primer forma eficiente d'interactuar con ordenadores: llinies de testu simple.
Col advenimiento del sistema operativuUnix a entamos de la década de 1970, l'usu de la llinia d'órdenes convirtióse nun estándar. Canonizáronse les regles d'execución basaes entuberíes, peneráu d'archivos utilizandocomodinos, y toes aquelles funcionalidades que dexaben les nacientesinterfaces de testu. Los sistemes operativos que vendríen (CP/M,DOS) adoptaríen como propies aquelles cualidaes.
Cola popularización de laordenador personal na década de 1980, les aplicaciones entraron a un nuevu escenariu onde yá non se tenía que compartir los recursos del sistema con otros usuarios. Agora cada usuariu cuntaba cola so propia máquina, cola qu'interactuaba d'una forma muncho más personalizada.Apple y depuésMicrosoft llanzaron exitosamente al mercáu sistemes qu'esplotaben tolos conceutos visuales que fueren desenvueltos porAlan Kay y el so equipu delPARC, esto ye, una interfaz gráfica pa controlar al ordenador per mediu d'unratón.
Hasta l'actualidá les GUI permanecen como la interfaz dominante y les CLI como interfaz secundaria. Sicasí, el mesmu Dr. Alan Kay señaló que «ye necesariu desenvolver un nuevu tipu de interfaz» pa optimizar la rellación ente humanos y ordenadores.[1]
Esquema d'elementos arreyaos nuna llinia d'órdenes.
Na so forma más simple, una CLI consiste nun espaciu onde pueden escribise órdenes (polo xeneral, señalizáu con unprompt). L'usuariu teclea una orde y executar al pasar a la llinia siguiente, utilizando la teclaEntrar.
Les órdenes daes a la CLI son con frecuencia de la forma:
PROMPT>aplicación [parametros] ficheros o URI...
Al rematar y unviar la orde cola tecla Entrar, un módulu interpretador d'órdenes analiza la secuencia de calteres recibida y, si la sintaxis de la orde ye correuta, executa la orde dientro del contestu del programa o del sistema operativu onde s'atopa. Esta forma de trabayu ye secuencial, y equival a un tipu deprogramación pasu a pasu.
L'usuariu percibe'l procesamientu de les sos instrucciones en forma d'aición. Si al usuariu únviase-y esta información de procesamientu en forma de testu simple, entós llámase-ysalida estándar o «stdout». L'usuariu tamién puede recibir un informe testual d'errores nuna canal especializada llamáu «stderr». Casi tolosshells implementen la visualización de «stdout» y «stderr» al mesmudispositivu, na mayoría de los casos la pantalla.
Tamién ye posible usarscripts, esto ye, archivos con instrucciones guardaes como si tuvieren escribiéndose nel momentu. En casu d'error, la execución delscript puede albortase. D'esta forma, la llinia de comandos puede utilizase ensin siquier tener que trepar col prompt, nin tando presente frente al monitor o tecláu.
Casi cualquier programa puede diseñase pa ufiertar al usuariu dalguna clase d'intérprete d'instrucciones. Por casu, dalgunosvideoxuegos paraPC enprimer persona tienen un intérprete d'órdenes incorporáu, conocíu comúnmente como «consola» (nun confundir conVideoconsola), utilizáu pa diagnósticu y llabores alministrativos.Quake,Unreal Tournament,Ragnarok Online oBattlefield son dellos exemplos. Dacuando la consola ye l'únicu mediu pa reparar problemes.
Cuando se trata d'un programa que interactúa colkernel d'unsistema operativu llámase-y con frecuenciashell. Dellos exemplos son los diversesshell de Unix (ksh,csh,tcsh,Bourne Shell, etc.), l'históricuCP/M, y elcommand.com deDOS, estos dos últimos fuertemente basaos nes CLI de RSTS y RSX-11, sistemes operativos delPDP-11 deDEC. El sistema operativuWindows Vista prometía unaCLI llamadaWindows PowerShell, que combinaba carauterístiques de les tradicionalesshells de Unix col soframework empobináu a oxetos.NET. Esti desenvolvimientu nun foi integráu por defectu nel sistema operativu, cuantimás por cuenta de los sos riesgos de seguridá iniciales.[2]
Les implementanciones dellinguaxes interpretaos suelen ufiertar tamién un ambiente de trabayu basáu en CLI. Nestos ambientes créase una instancia de lamáquina virtual cola que l'usuariu puede interactuar.
Delles aplicaciones apurren tantu una CLI como una GUI. Un exemplu ye'l programa de CADAutoCAD. El paquete científicu/ingenieril de computación numbéricaMatlab nun apurre GUI pa dellos cálculos, pero la CLI puede realizar cualquier cálculu. El programa de modeláu tridimensionalRhinoceros 3D (que s'usa pa diseñar les caxes de la mayor parte de los teléfonos portátiles, según miles d'otros productos industriales) apurre una CLI (que'l so llinguaxe, a éstes ye distintu del llinguaxescripts de Rhino). En delles redolaes informátiques, como la interfaz d'usuariu deSmalltalk oOberon, la mayor parte del testu qu'apaez na pantalla puede usase pa dar órdenes.
Nun esiste nenguna normativa obligatoria en cuanto al formatu de invocación (escritura y execución) o a la documentación que les aplicaciones o funciones tienen de presentar. Sicasí, acuñáronse estándares informales al momentu de definir formes. El más importante consiste nel usu de corchetes[ ] pa indicar parámetros opcionales. Estos pueden añerase ([..[..]]). Por casu, la documentación de l'aplicacióncal dePOSIX diz que la forma d'executase per mediu del CLI ye:
cal [[mes] añu ]
Esto significa que si se desea ver l'añu 2012, tendría qu'escribise lliteralmente:
Una interfaz testual d'usuariu consiste nuna interfaz gráfica fecha dafechu de testu. Nun ye lo mesmo qu'un CLI, anque dambos usen el mesmu periféricu.