Interfaz de llínea de comandos

De Wikipedia
Saltar a navegación Saltar a la gueta
Evolución de les intefaces d'usuariu.
CLI (Command line interface): Interfaz de llinia de comandos
GUI (Graphical user interface): Interfaz gráfica d'usuariu
NUI (Natural user interface): Interfaz natural d'usuariu
Una típica CLI atopada nes interfaces gráfiques de diversos sistemes operativos, pa executar aplicaciones al traviés d'un intérprete de comandos.

La interfaz de llinia de comandos o interfaz de llinia d'ordes (inglés: command-line interface, CLI) ye un métodu que dexa a los usuarios dar instrucciones a dalgún programa informáticu per mediu d'una llinia de testu simple. Tien De notase que los conceutos de CLI, shell y emulador de terminal nun son lo mesmo yá que CLI ye un <o>método</o> ente que shell y emulador de terminal son <o>programes informáticos</o>. Sicasí los trés suelen utilizase como sinónimos.

Les CLI pueden emplegase interactivamente, escribiendo instrucciones en dalguna especie de Cursor (informática)#Cursor de testu entrada de testu, o pueden utilizase d'una forma muncho más automatizada (archivu batch), lleendo ordes dende un archivu de scripts.

Esta interfaz esiste casi dende los empiezos de la computación, superada n'antigüedá solo poles tarxetes furaes y mecanismos similares. Esisten pa diversos programes y sistemes operativos, pa diversu hardware, y con distinta funcionalidad.

Por casu, les CLI son parte fundamental de los shells o emuladores de terminal. Apaecen en toles interfaces d'escritoriu (GNOME, KDE, Microsoft Windows) como un métodu pa executar aplicaciones rápido. Apaecen como interfaz de llinguaxes interpretaos tales como Java, Python, Ruby o Perl. Tamién s'utilicen n'aplicaciones vecera-servidor, en xestores de bases de datos, en veceros FTP, etc. Les CLI son un elementu fundamental d'aplicaciones d'inxeniería tan importantes como MATLAB y AutoCAD.

La contraparte de CLI ye la interfaz 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 mayor vulnerabilidá 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 en Unix; en redolaes científiques y d'inxeniería, y un subconxuntu más pequeñu d'usuarios domésticos avanzaos.

En dispositivos portátiles y PDA, les CLI nun s'utilicen, por cuenta de lo complexo que resulta ingresar datos de testu, o pola ausencia total de teclaos.

Historia[editar | editar la fonte]

Nos primeros años de los ordenadores, y mientres la era de los computadores denominaos mainframes, el control de la execución de los programes facer dende llugares especiales (de normal allugaos cerca del computador en sales con aire acondicionáu), onde l'alministrador manipoliaba directamente 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 computadores: llinies de testu simple.

Col advenimiento del sistema operativu Unix a entamos de la década de 1970, l'usu de la llinia de comandos convertir nun estándar. Canonizáronse les regles d'execución basaes en tuberíes, peneráu d'archivos utilizando comodinos, y toes aquelles funcionalidades que dexaben les nacientes interfaces de testu. Los sistemes operativos que vendríen (CP/M, DOS) adoptaríen como propies aquelles cualidaes.

Cola popularización de la ordenador 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és Microsoft llanzaron exitosamente al mercáu sistemes qu'esplotaben tolos conceutos visuales que fueren desenvueltos por Alan Kay y el so equipu del PARC, esto ye, una interfaz gráfica pa controlar al computador per mediu d'un mure.

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 relación ente humanos y computadores.[1]

Funcionamientu[editar | editar la fonte]

Esquema d'elementos arreyaos nuna llinia d'ordes.

Na so forma más simple, una CLI consiste nun espaciu onde pueden escribise ordes (polo xeneral, señalizáu con un prompt). L'usuariu teclea una orde y executar al pasar a la llinia siguiente, utilizando la tecla Entrar.

Les ordes 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'ordes analiza la secuencia de calteres recibida y, si la sintaxis de la orde ye correcta, 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 de programación pasu a pasu.

L'usuariu percibe'l procesamientu de les sos instrucciones en forma d'acción. Si al usuariu únviase-y esta información de procesamientu en forma de testu simple, entós llámase-y salida estándar o «stdout». L'usuariu tamién puede recibir un informe testual d'erros nuna canal especializada llamáu «stderr». Casi tolos shells implementen la visualización de «stdout» y «stderr» al mesmu dispositivu, na mayoría de los casos la pantalla.

Tamién ye posible usar scripts, esto ye, archivos con instrucciones guardaes como si tuvieren escribiéndose nel momentu. En casu d'erru, la execución del script 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.

Implementaciones[editar | editar la fonte]

Casi cualquier programa puede diseñase pa ufiertar al usuariu dalguna clase d'intérprete d'instrucciones. Por casu, dalgunos videoxuegos para PC en primer persona tienen un intérprete d'ordes incorporáu, conocíu comúnmente como «consola» (nun confundir con Videoconsola), utilizáu pa diagnósticu y llabores alministrativos. Quake, Unreal Tournament, Ragnarok Online o Battlefield son dellos exemplos. Dacuando la consola ye l'únicu mediu pa reparar problemes.

Cuando se trata d'un programa que interactúa col kernel d'un sistema operativu llámase-y con frecuencia shell. Dellos exemplos son los diverses shell de Unix (ksh, csh, tcsh, Bourne Shell, etc.), l'hestóricu CP/M, y el command.com de DOS, estos dos últimos fuertemente basaos nes CLI de RSTS y RSX-11, sistemes operativos del PDP-11 de DEC. El sistema operativu Windows Vista prometía una CLI llamada Windows PowerShell, que combinaba característiques de les tradicionales shells de Unix col so framework 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 de llinguaxes interpretaos suelen ufiertar tamién un ambiente de trabayu basáu en CLI. Nestos ambientes créase una instancia de la máquina virtual cola que l'usuariu puede interactuar.

Delles aplicaciones apurren tantu una CLI como una GUI. Un exemplu ye'l programa de CAD AutoCAD. El paquete científicu/ingenieril de computación numbérica Matlab nun apurre GUI pa dellos cálculos, pero la CLI puede realizar cualquier cálculu. El programa de modeláu tridimensional Rhinoceros 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 llinguaxe scripts de Rhino). En delles redolaes informátiques, como la interfaz d'usuariu de Smalltalk o Oberon, la mayor parte del testu qu'apaez na pantalla puede usase pa dar ordes.

Estándar de invocación[editar | editar la fonte]

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ón cal de POSIX diz que la forma d'executase per mediu del CLI ye:

cal [[mes] añu ]

Esto significa que si se deseya ver l'añu 2012, tendría qu'escribise lliteralmente:

cal 2012

Exemplos d'interacción[editar | editar la fonte]

La instrucción pa listar archivos, en diverses redolaes:

Programa o sistema operativu Orde Tipu de programa
Bourne ls Shell de Unix
CMD dir Shell de Windows
NewShell list o dir AMIGAOS (shell de AMIGÁIVOS/MorphOS/AROS)
Matlab dir Procesamientu matricial
Quake /dir Videoxuegu pa PC
TACL FILEINFO Shell de Guardián
Python Shell vos.listdir('.') Python, llinguaxe d'altu nivel

Interfaz testual d'usuariu[editar | editar la fonte]

Artículu principal: Interfaz de testu

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.

Ver tamién[editar | editar la fonte]

Referencies[editar | editar la fonte]

Bibliografía[editar | editar la fonte]

  • (1999) Nel principiu... foi la llinia de comandos.

Enllaces esternos[editar | editar la fonte]




Interfaz de línea de comandos