O que exatamente é terminal? O que é shell? [duplicado]

2

Eu sei sobre o terminal Linux. Eu também posso emitir muitos comandos avançados através do terminal. Mas um conceito simples não está claro para mim.

O que é terminal e como funciona?

Eu sei sobre hardware que consiste em CPU, RAM, disco rígido e assim por diante.

Eu sei sobre o kernel, que é basicamente o núcleo do sistema operacional.

Eu sei sobre software que fica no topo do kernel.

E eu sei sobre os usuários.

E eu sei que o usuário usa um terminal ou GUI para dar instruções ao software (ou kernel?)

Agora, por favor, explique estes conceitos de terminal e shell.

Explicação gráfica e palavras não técnicas simples são preferíveis.

    
por rancho 11.06.2016 / 18:12

2 respostas

3

O que é shell?

Em palavras simples, shell é um software que pega o comando do seu teclado e o passa para o sistema operacional.

Então são cascas de terminais konsole, xterm ou gnome?

Não, eles são chamados de emuladores de terminal. Eles abrem uma GUI para interagir com o shell. Você pode pensar neles como um frontend para os shells.

Conchas diferentes

Existem shells diferentes que são mais ou menos iguais, mas os recursos e sintaxes são diferentes.

Bourne shell O shell mais básico disponível em todos os sistemas UNIX

Korn Shell Baseado no shell Bourne com aprimoramentos

C Shell Semelhante à linguagem de programação C na sintaxe

Bash Shell O Bourne Again Shell combina as vantagens do Korn Shell e do C Shell. O padrão na maioria das distribuições Linux.

tcsh Semelhante ao C Shell

    
por 11.06.2016 / 18:33
1

O shell é o programa executado no terminal, que lê os comandos digitados e os executa.

Os sistemas operacionais Unix e Unix atualmente oferecem uma escolha entre o mesmo conjunto de shells, porque esses shells são anteriores a maioria desses sistemas operacionais.

Para ler mais, recomendo Evolução de shells no Linux (IBM)

Edite para adicionar informações sobre conchas e terminais após comentários sobre outra resposta:

Um terminal é um periférico de hardware que faz interface com um humano, é composto de saída para o usuário e entrada do usuário, em outras palavras de uma tela e um teclado, veja o link. O que a GUI mostra é um terminal virtual . O shell é o software de interface de linha de comando que normalmente é o que você vê em um terminal, mas não precisa ser um shell. Você poderia inicializar um terminal virtual e dizer a ele para executar vi diretamente, por exemplo, nenhum shell envolvido.

    
por 11.06.2016 / 18:29