Um terminal é um dispositivo ou aplicativo que permite a conexão a outro sistema. Quando você faz essa conexão no Unix, conecta-se a um shell .
O shell é um aplicativo que permite ao usuário executar todos os tipos de operações, incluindo a execução de outros programas. Note que a maioria dos programas não precisa que o shell exista. O shell existe apenas para controle do usuário.
Assim, o shell aparece dentro do terminal , mas não é executado a partir dele.
Finalmente, note que existem muitos diferentes emuladores de terminal e shells.