¿Cuál es la diferencia entre Terminal, Console, Shell y Command Line?

172

¿Cuál es la diferencia entre Terminal, Console, Shell y Command Line?

    
pregunta Akiva 04.08.2014 - 06:35

10 respuestas

120

La respuesta corta es que

  • terminal = entorno de entrada / salida de texto
  • console = terminal físico
  • shell = intérprete de línea de comandos

La consola y el terminal están estrechamente relacionados. Originalmente, se referían a un equipo a través del cual se podía interactuar con una computadora: en los primeros días de Unix, eso significaba una teleimpresora

En la terminología de Unix, una terminal es un tipo particular de archivo de dispositivo que implementa un número de comandos adicionales ( ioctls ) más allá de la lectura y la escritura. Algunos terminales son proporcionados por el kernel en nombre de un dispositivo de hardware, por ejemplo, con la entrada que proviene del teclado y la salida que va a una pantalla de modo de texto, o con la entrada y la salida transmitidas a través de una línea serie. Los programas denominados emuladores de terminal proporcionan otros terminales, a veces llamados pseudo-terminales o pseudo-ttys (a través de una capa de kernel delgada). . Algunos tipos de emuladores de terminal incluyen:

  • Aplicaciones de GUI que se ejecutan en el Sistema de ventanas X : Xterm , Terminal Gnome, Konsole, Terminator, etc.
  • Pantalla y tmux , que proporciona una capa de aislamiento entre un programa y otro terminal
  • Ssh , que conecta un terminal en una máquina con programas en otra máquina
  • Expect , para interacciones de scripting terminal

La palabra terminal también puede tener un significado más tradicional de un dispositivo a través del cual uno interactúa con una computadora, generalmente con un teclado y una pantalla. Por ejemplo, un terminal X es un tipo de cliente ligero , una computadora de propósito especial cuyo único propósito es manejar un teclado, pantalla, mouse y ocasionalmente otros periféricos de interacción humana, con las aplicaciones reales ejecutándose en otra computadora más poderosa.

Una consola generalmente es una terminal en el sentido físico que, de alguna manera, es la terminal principal conectada directamente a una máquina. La consola aparece en el sistema operativo como una terminal (implementada por kernel). En algunos sistemas, como Linux y FreeBSD, la consola aparece como varios terminales (ttys) (combinaciones especiales de teclas cambian entre estos terminales); solo para confundir las cosas, el nombre dado a cada terminal en particular puede ser "consola", "consola virtual", "terminal virtual" y otras variaciones.

Ver también ¿Por qué un terminal virtual es "virtual" y qué / por qué / dónde está el terminal "real"? .

Una línea de comandos es una interfaz donde el usuario escribe un comando (que se expresa como una secuencia de caracteres, normalmente un nombre de comando seguido de algunos parámetros) y presiona Volver tecla para ejecutar ese comando.

Un shell es la interfaz principal que los usuarios ven cuando inician sesión en, cuyo objetivo principal es iniciar otros programas. (No sé si la metáfora original es que el shell es el entorno doméstico para el usuario o que el shell es en lo que se ejecutan otros programas).

En los círculos de Unix, shell se ha especializado para significar shell de línea de comandos , centrado en introducir el nombre de la aplicación que se quiere iniciar, seguido de los nombres de los archivos u otros objetos sobre los que la aplicación debe actuar, y presionar la tecla Enter. Otros tipos de entornos (con la notable excepción reciente de Gnome Shell) generalmente no usan la palabra "shell"; por ejemplo, los sistemas de ventanas implican a " administradores de ventanas " y " entornos de escritorio ", no un "shell".

Hay muchas conchas de Unix diferentes. El shell predeterminado de Ubuntu es Bash (como la mayoría de las distribuciones de Linux). Las alternativas populares incluyen zsh (que enfatiza el poder y la personalización) y fish (que enfatiza la simplicidad) .

Los shells de línea de comandos incluyen construcciones de control de flujo para combinar comandos. Además de escribir comandos en un aviso interactivo, los usuarios pueden escribir scripts. Los shells más comunes tienen una sintaxis común basada en la Bourne_shell . Cuando se habla de " programación de shell ", el shell casi siempre implica que es un shell de estilo Bourne. Algunos shells que se usan a menudo para crear scripting pero carecen de características interactivas avanzadas incluyen el shell Korn (ksh) y muchos ash variantes. Prácticamente cualquier sistema de tipo Unix tiene un shell Bourne-style instalado como /bin/sh , generalmente ceniza, ksh o bash. En Ubuntu, /bin/sh es Dash , una variante de ceniza (elegida porque es más rápida y usa menos memoria) que bash).

En la administración del sistema Unix, el shell de un usuario es el programa que se invoca cuando inicia sesión. Las cuentas de usuario normales tienen un shell de línea de comandos, pero los usuarios con acceso restringido pueden tener un shell restringido o algún otro comando específico (por ejemplo, para cuentas de solo transferencia de archivos).

La división del trabajo entre el terminal y el shell no es completamente obvia. Estas son sus principales tareas.

  • Entrada: el terminal convierte las claves en secuencias de control (por ejemplo, izquierda \e[D ). El shell convierte las secuencias de control en comandos (por ejemplo, \e[Dbackward-char ).
  • El shell proporciona la edición de línea, el historial de entrada y la finalización.
    • El terminal puede proporcionar su propia edición de línea, historial y finalización en su lugar, y solo envía una línea al shell cuando está listo para ser ejecutado. El único terminal común que opera de esta manera es M-x shell en Emacs.
  • Salida: el shell emite instrucciones como "mostrar foo ", "cambiar el color de primer plano a verde", "mover el cursor a la siguiente línea", etc. El terminal actúa según estas instrucciones.
  • El mensaje es simplemente un concepto de shell.
  • El shell nunca ve la salida de los comandos que ejecuta (a menos que se redirija). El historial de salida (scrollback) es puramente un concepto de terminal.
  • Copia y pegado entre aplicaciones es proporcionado por el terminal (generalmente con el mouse o secuencias de teclas como Ctrl + Shift + V o Shift + Insertar ). El shell también puede tener su propio mecanismo interno de copiar y pegar (por ejemplo, Meta + W y Ctrl + Y ).
  • Job control (iniciando programas en segundo plano y administrándolos) es realizado principalmente por el shell. Sin embargo, es el terminal el que maneja combinaciones de teclas como Ctrl + C para matar el trabajo en primer plano y Ctrl + Z para suspenderlo.

Reciclado de Unix y amp; Linux

    
respondido por el Gilles 04.08.2014 - 12:30
52

Una representación visual.

Terminal

Algo en lo que puedas sentarte y trabajar como un jefe.

Consola

Un hardware que hace un montón de cosas.

Otro ejemplo de consola sería una consola de videojuegos como Super Nintendo [donde puedes jugar Actraiser]

shell

Básicamente una aplicación para ejecutar comandos.

Línea de comando [Interfaz]

Básicamente cualquier cosa en la que ingreses los comandos.

    
respondido por el Akiva 04.08.2014 - 22:09
19

Del Proyecto de información de Linux :

  

Terminal : Técnicamente, una ventana de terminal, también conocida como emulador de terminal, es una ventana de solo texto en una interfaz gráfica de usuario (GUI) que emula una consola.

En nuestras palabras Una aplicación GUI, desde donde podemos acceder a la consola de un usuario.

  

Console : un panel de instrumentos que contiene los controles de una computadora

     

Shell : un shell es un programa que proporciona la interfaz de usuario tradicional de solo texto para Linux y otros Unix. como los sistemas operativos

     

Línea de comandos : una línea de comando es el espacio a la derecha del símbolo del sistema en una pantalla de texto completo modo en un monitor de computadora (generalmente un CRT o panel LCD) en el que un usuario ingresa comandos y datos

    
respondido por el Ten-Coin 04.08.2014 - 06:39
14

Las respuestas aquí parecen muy buenas. Sin embargo, son demasiado secos y técnicos para mi gusto, así que daré una oportunidad ...

Terminal es el final de algo, donde termina. Por ejemplo, si tomas el metro en alguna ciudad, la estación donde bajas es tu terminal. O en un aeropuerto, el lugar donde las personas salen cuando llegan a su país de destino se considera la terminal. La razón por la cual la terminal en el aeropuerto es hoy en día, tanto el lugar en el que se lleva a las personas a bordo como el lugar donde se los saca del avión, es por razones económicas obvias.

El propósito de una computadora es obtener información, hacer algo con ella y escupir el resultado. Por lo tanto, el terminal es cualquier dispositivo desde donde se puede obtener el resultado del cálculo ... una pantalla, por ejemplo. Simplemente sucedió que en las primeras computadoras generalmente tenías la entrada (teclado) y la salida (pantalla) como un solo dispositivo. Debido a que hoy en día los terminales se consideran dispositivos de entrada / salida. Un mouse, teclado, pantalla, cámara, todos son terminales.

Shell es una cosa del sistema operativo. En una computadora tiene el kernel que en Ubuntu, por ejemplo, es la parte de Linux. Ahora, dado que el kernel es realmente de bajo nivel, se proporciona un shell, un programa que permite al usuario interactuar con el núcleo de una manera fácil. Eso es lo que BASH es, por ejemplo.

Console es (de un diccionario)

  

una superficie plana que contiene los controles para una máquina, para una pieza   de equipos eléctricos, etc.

Es por eso que en la industria de la música el tablero con todas las perillas, o en un transbordador espacial la mesa de comando, todas son consideradas consolas. Super Nintendo y PS2 también se conocen como consolas históricamente, ya que los primeros dispositivos de entretenimiento parecían cajas con un montón de botones.

Command line es solo una interfaz, lo opuesto a GUI. A saber, hay dos tipos de interfaces en una computadora; CLI (interfaz de línea de comando) y GUI (interfaz gráfica de usuario). La principal diferencia es que el primero recibe información del teclado mientras que el segundo recibe información del mouse.

    
respondido por el Pithikos 06.08.2014 - 12:40
7

Para resumir mi respuesta:

Shell es un programa con processes comandos y returns de salida, como bash en Linux.

Terminal es un programa que run a shell , en el pasado era un dispositivo físico (antes de que los terminales fueran monitores con teclados) , eran teletipos y luego su concepto se transfirió a software , como Gnome-Terminal .

Así que abro Gnome-Terminal , aparece una ventana negra que ejecuta Shell para que pueda ejecutar mis comandos.

La consola es un tipo de terminal especial , también era un dispositivo físico. ejemplo en Linux tenemos virtual console que puedo acceder a ellos mediante la combinación de Ctrl + Alt + F1 a F7 .

Consola a veces significa que el teclado y el monitor físicamente están conectados a esta computadora.

    
respondido por el nux 05.08.2014 - 13:59
7

Estos términos a menudo van de la mano, por lo que las personas usan uno de los términos para referirse a la colección. (es decir, normalmente es obvio por contexto que se refieren a una ventana de terminal que proporciona una interfaz a un shell de línea de comando).

Para evitar que esto termine, voy a decir xterm como un suplente para XTerm / Gnome Terminal / Konsole / mrxvt / etc / etc. Lo mismo para bash.

Console tiene muchos otros significados específicos, así que déjalo por ahora.

Terminal : algo que proporciona interacción humana con programas a través de una secuencia bidireccional de ASCII / UTF8 / otros caracteres, generalmente con VT100 o un procesamiento de código de escape similar. (Por ejemplo, retroceso, eliminación, teclas de flecha, etc. generan códigos de escape. Los programas pueden imprimir códigos de escape para mover el cursor por la pantalla del terminal, cambiar a texto en negrita, y / o color, borrar o desplazarse por la pantalla, etc.) viejos días, esto era a menudo un dispositivo dedicado con una pantalla y teclado y un puerto serie. Ahora, generalmente es un programa como xterm.

Hay archivos de dispositivo para que los programas lean / escriban desde / a terminales, y los terminales virtuales también tienen acceso al otro lado como un archivo de dispositivo. Aquí es donde xterm escribe su entrada para que bash pueda leerla.

Todos los terminales, incluidos los virtuales, proporcionan una edición de línea básica cuando está en modo cocido (en lugar de crudo). Esto es manejado por código de kernel. Es bash que proporciona la edición de línea que puede hacer con las teclas de flecha. (Intente ejecutar cat y escriba si desea ver cómo es la edición básica de líneas proporcionada por el núcleo. Retroceso funciona, y un par de cosas más según su configuración).

A pesar de que hay una gran cantidad de código de núcleo detrás de los dispositivos terminales, se denominaría código de manejo de terminal, no como un terminal en sí.

Editar: Gilles me ha convencido de que hacer referencia a un tty como terminal es un uso correcto. Emuladores de terminal y programas interactivos que se ejecutan conectados a un terminal, todos dependen de la semántica de terminal implementada por el kernel. (La mayor parte de este comportamiento está estandarizado por POSIX, y es el mismo en Linux / * BSD / otro Unix.) Un editor de texto de pantalla completa depende del comportamiento de Unix tty stuff así como del manejo del código de escape del movimiento del cursor. y muchas otras características del emulador de terminal.

Sin embargo, un VT100 físico con pantalla, teclado y puerto serie es una instancia de un terminal. No requiere que se complete un kernel de Unix en el otro extremo de su puerto serie. Algo completamente diferente podría ser el envío de códigos de escape y texto ASCII, y recibir lo mismo de él. Sin embargo, sería un VT100, no una terminal Unix. Un emulador de terminal más la semántica tty de Unix conforman el paquete completo de un terminal Unix que normalmente ejecuta un programa como bash.

Línea de comando es un estilo de interfaz de usuario, donde tipea algo y luego presiona return para que algo suceda. También se usa como una abreviatura de un shell de línea de comandos, como bash o MS-DOS, pero también se puede decir "es una herramienta de línea de comandos" sobre algo así como fdisk. Considerando solo los programas que usan una terminal para su UI, las dos familias principales son la línea de comando y el texto de pantalla completa (por ejemplo, un editor como vi o emacs -nw ).

Los programas de línea de comandos que normalmente se ejecutan en terminales casi siempre funcionan con sus entradas y salidas redirigidas a archivos, pero los programas de pantalla completa basados ​​en terminales como editores o clientes de correo electrónico son interactivos y no funcionarían.

Un shell es un programa para iniciar otros programas. En un contexto de Unix, es común referirse a un shell de línea de comandos (es decir, shell Bourne o equivalente de shell C). Las shells de Unix también pueden leer sus entradas de archivos, es decir, scripts de shell. Son lenguajes de programación completos, con variables, bucles y condicionales, y muchos programas están escritos en bash (o con solo las características de shell /bin/sh POSIX, para una mayor portabilidad). También es posible escribir rápidamente un for i in *.something; do some_program "$i";done rápido en un shell interactivo.

Poniéndolo todo junto, un shell como bash (o cualquier programa que haya comenzado ejecutando un comando de shell) recibirá caracteres del dispositivo terminal /dev/pts/N después de que xterm escriba su entrada en su lado del pseudo-terminal. Si ejecuta cat , entonces pulse ^c , el código de kernel tty actuará en ^c y enviará SIGINT al proceso de primer plano en esa terminal. (Tenga en cuenta el uso de terminal en este contexto para significar el Unix tty, no un emulador de terminal o algo conectado a un puerto serie.) Esto sucede porque el shell pone el terminal en modo "cocinado" antes iniciando cualquier programa, lo que significa que el kernel actúa en algunas secuencias de control. (El código tty todavía no tiene nada que ver con el manejo de los códigos de escape VT100, solo unos pocos códigos de control ASCII bajos).) Si en lugar de un xterm, está utilizando el terminal de texto de la consola Linux, entonces el kernel ESTÁ haciendo la emulación VT100 y manejando todo eso. Linux se puede compilar sin soporte de terminal de texto de consola virtual, pero no sin soporte tty.

Console a veces se usa como sinónimo de terminal (KDE incluso tiene un emulador de terminal llamado Konsole).

Como señala 0xSheepdog, también tiene otro significado: hardware de interacción humana conectado localmente.

En un contexto de kernel, la consola tiene otro significado específico: es la terminal donde se escriben los mensajes de inicio. Este puede ser un puerto serie. Normalmente, por supuesto, es la consola de texto implementada por el kernel en la parte superior de los controladores para hardware de gráficos y teclados USB / ps2 / AT. Si arranca Linux con console=tty0 console=ttyS0,115200n8 en la línea de comando, obtendrá mensajes del kernel en su pantalla Y en el puerto serie.

Linux implementa consolas virtuales ( /dev/tty1 a N ). Puede intercambiar cuál controla su pantalla / teclado físico con Ctrl + Alt + F N . Las típicas distribuciones de Linux crean 6, e inician getty en todas ellas, por lo que incluso si no puede o no quiere iniciar X11, puede iniciar sesión 6 veces y cambiar entre un comando, una página man y cualquier otro más, sin ejecutar un programa como pantalla. Linux (el núcleo) incluye un emulador de terminal de estilo VT100 para proporcionar una interfaz de terminal a través de su pantalla y teclado en las consolas virtuales.

Los 6 terminales virtuales estándar con solicitudes de inicio de sesión son la razón por la cual Ctrl + Alt + F7 lo regresa a su sesión X11: el servidor X agarra la próxima consola virtual disponible. (Sin embargo, el servidor X abre /dev/input/... directamente, en lugar de obtener sus pulsaciones de tecla de /dev/tty7 )

Entonces, "cambiar a una consola de texto" significa presionar Ctrl + Alt + F1 y usar ese terminal. Cuando las computadoras eran lentas y no tenían mucha RAM, algunas personas pasaban gran parte de su tiempo en las consolas de texto, dado que eran rápidas, podía establecer una fuente agradable e incluso cambiar el tamaño de la terminal para tener caracteres más pequeños, pero tener más en la pantalla a la vez. Alt + Izquierda y Alt + Derecha cambian a la consola anterior / siguiente. (X11 desactiva esto para su consola, por supuesto, dejando solo el combo Ctrl + Alt + F N . )

Entonces consola es el único de estos términos que no tiene un único significado técnico bien definido. Tiene un par de otros diferentes. (Dependiendo de cómo se sienta acerca del manejo adecuado del terminal frente al manejo del terminal más el tty, podría decirse que el terminal también tiene múltiples significados).

    
respondido por el Peter Cordes 05.08.2014 - 11:16
5

Creo que en los primeros tiempos de las computadoras que compartían el tiempo, cada usuario tenía una terminal (¡cuando podían obtener una!), pero solo los operadores del sistema tenían una consola. La consola podría usarse para tareas como reiniciar la máquina u obtener diagnósticos del sistema que no eran posibles desde los terminales de usuario. La consola estaba en la sala de máquinas, una parte intrínseca de la computadora, mientras que los terminales podían ser remotos. La consola también incluiría luces e interruptores de hardware, no solo entradas y salidas de texto.

Diría que la línea de comando es un área donde un usuario puede escribir un comando, mientras que el shell es el programa que interpreta / obedece ese comando. El término "caparazón" es muy particular para derivados de Unix; "línea de comandos" está más en la tradición de Windows / DOS. El equivalente en mainframes generalmente se denomina "lenguaje de control de trabajo".

Claramente, estas distinciones originales se han difuminado con el tiempo a medida que la tecnología cambia.

    
respondido por el Michael Kay 05.08.2014 - 00:35
3

Prueba de respuesta breve centrada en el usuario:

línea de comando - la línea donde ingresas los comandos. Por lo general, solía decir que necesita ejecutar algo en la ventana de modo de texto (interfaz de línea de comando) proporcionada por su sistema operativo.

shell : el programa real que ejecuta el sistema operativo para procesar las cosas que ingresas en command line . De ahí el nombre: shell fácil de usar para núcleo de SO no amigable. Proporciona un símbolo del sistema, como $ o > , ejecuta sus propios comandos y aplicaciones. Siempre trabajas a través del programa shell y nunca trabajas con consola o terminal directamente.

consola : es una ventana donde se ejecutan los programas de modo de texto. Esta ventana procesa las pulsaciones de teclas, sabe que es ancho y alto. Puede ser de pantalla completa.

terminal : es un dispositivo con pantalla para humanos que acepta el flujo de entrada de caracteres y los muestra. No hay comentarios para el usuario sobre la altura o el ancho (solo hacks) o las pulsaciones del teclado: solo los caracteres que viajan hacia él. Terminal procesa secuencias especiales en esta secuencia para hacer que las cosas se coloreen, limpiar la pantalla y hacer otras cosas desagradables. Las terminales son escamosas, porque es fácil desordenar las cosas si el archivo que está canalizando contiene esas secuencias especiales. Son populares en las interfaces de red y de depuración de dispositivos, ya que solo necesita una única transmisión para enviar la salida y controlar el dispositivo de salida, y puede simplemente tap en la conversación sin necesidad de inicializar o crear una ventana.

consola serie : es una consola que procesa la transmisión de entrada como una terminal.

    
respondido por el anatoly techtonik 24.10.2014 - 12:42
3

Este es un tema vago, porque los términos son muy ambiguos. Recomiendo leer los enlaces que he proporcionado a lo largo de esta respuesta, que también son mis fuentes para esta respuesta.

Un shell es la capa sobre el kernel:

  • Interpreta los comandos ingresados ​​por el usuario y los procesa. El shell tiene acceso al kernel, a diferencia de los usuarios. Los usuarios solo pueden acceder al kernel al ingresar comandos utilizando un shell y al usar procesos (es decir, ejecutar programas). Los programas usan llamadas al sistema para acceder a la funcionalidad del kernel. Todas las llamadas al sistema forman la API del sistema.
  • Ejemplos de proyectiles se dan en la segunda definición de terminal.

Un terminal tiene muchos significados:

  • (1) Un terminal de texto . Esta es la combinación de un monitor de pantalla y un teclado. Un cable conectaba la terminal a la computadora (a menudo indirectamente). Se llamaba terminal porque estaba ubicado en el extremo terminal de este cable. Estos terminales generalmente se separaban físicamente de la computadora, porque en la época en que muchos terminales estaban conectados a un solo mainframe / computadora, múltiples usuarios podían tener acceso a la computadora al mismo tiempo.
  • (2) Una ventana de terminal a.k.a. terminal emulator . En Linux, una ventana de terminal es la emulación de una consola, contenida en una ventana de GUI. Es la CLI en la que escribe su texto, y esta entrada la lee el intérprete de comandos que está utilizando. Hay muchos tipos de proyectiles (por ejemplo, bash, dash, ksh88) y terminales (por ejemplo, konsole, gnome).
  • (3) Para obtener una explicación sobre los pseudo terminales , consulte esto . Es un par de dos 'archivos de dispositivo' utilizados para la comunicación entre un proceso y un emulador de terminal.

Una consola tiene muchos significados:

  • (1) un panel de instrumentos que contiene los controles para una computadora.
  • (2) Una consola del sistema a.k.a. consola de la computadora . Esta es la combinación del monitor de visualización y un teclado conectado a una computadora. Esto es sinónimo de lo que llamamos 'terminal de texto'. A veces, también otros periféricos de entrada de usuario, como un mouse, son parte de una consola.
  • (3) Una interfaz de línea de comandos que cubre la pantalla completa. Esto está en contraste con una ventana de terminal, que es una GUI con una X en la esquina superior derecha para cerrarla. Estos son los dos modos de visualización para CLI (interfaces de línea de comandos) en sistemas tipo Unix. De forma similar a una ventana de terminal, la consola también puede ejecutar muchos shells.

A menudo, los sistemas operativos le permiten ejecutar múltiples consolas en una consola física (definición de consola 2). Se llaman consolas virtuales alias terminales virtuales , y se puede acceder a través de ctrl + alt + Fx combinaciones. Por ejemplo, si desea abrir la tercera consola virtual, use la combinación ctrl + alt + F3 .

Las consolas (definición 3) pueden aparecer como un anacronismo, pero los expertos deberían sentirse cómodos usándolas, ya que hay muchos sistemas operativos que no son compatibles con las GUI. Además, si una GUI deja de responder, la consola aún puede funcionar.

    
respondido por el user1534664 03.12.2015 - 06:13
2

La mayoría de los terminales hoy en día son estrictamente hablando emuladores de terminal . Es un tipo de función en el funcionamiento de un sistema tipo UNIX y, al mismo tiempo, la interfaz básica que ofrecen los sistemas. De hecho, todo, incluida la GUI, se basa en él.
Coloquialmente "terminal" también puede referirse a los puntos finales en una red informática con una topografía en estrella.

Consola se refiere a las interfaces (de hardware) para los terminales. Es decir. hay consolas en serie y en la actualidad en su mayoría virtuales .
La ventana coloquialmente llamada "consola" es una consola, conectada a un terminal del sistema, a través de una consola virtual.

En la época en que las computadoras eran caras, una instalación podía tener una computadora real y varias terminales conectadas a ella, a través de cables en serie ("consola serie"). El sistema operativo, las operaciones, etc. se llevaron a cabo en la computadora física, la entrada y la salida ocurrieron en la (s) consola (s).
Puede alternar entre terminales virtuales presionando CTRL + ALT + F1 (hasta F6 ): un residuo de esos tiempos.
Hoy en día, el concepto de "clientes ligeros" se remonta en esta dirección de centralizar grandes cantidades de recursos y proporcionar el hardware suficiente para proporcionar una interfaz de última generación en el lugar de trabajo real.

shell es el "motor" que ves en la terminal. Proporciona interoperabilidad con el sistema en sí y agrega características interesantes como autocompletar, variables, etc.
Se traduce de ida y vuelta entre el sistema operativo / kernel real que usa las llamadas al sistema y usted. Las llamadas al sistema sin shell son un poco como codificar assembler y un shell al menos te da C .

línea de comando hace referencia al método de intercambio de entrada y salida a través de una ventana de texto. Estrictamente hablando, la línea en la que escribe es la (actual) línea de comando. El método en general se conoce más correctamente como interfaz de línea de comandos o CLI.

  1. kernel
  2. ofrece terminal
  3. la terminal está conectada a través de una consola
  4. consola ejecuta shell
  5. los comandos y las salidas se intercambian a través de la línea de comandos (interfaz)
respondido por el Mark 04.08.2014 - 14:17

Lea otras preguntas en las etiquetas