Терминал и оболочка одинаковы? - proUbuntu
Винтажный Клуб для гитаристов
28 голосов
/

Я знаю, что это может звучать глупо, но я просто хотел узнать, действительно ли существует разница между двумя словами, используемыми в мире Linux. Я знаю, что оболочка является интерфейсом командной строки и имеет много вариантов, таких как Bash, Korn и т. Д. И я также знаю, что Ctrl + Alt + T запускает терминал в Ubuntu. Я просто хочу соединить эти две точки.

Означает ли это, что терминал - это открывающееся окно, а оболочка - это программа, запускаемая для интерпретации команд, введенных в окне? Или они такие же, где терминал - это общий термин, используемый для абстрагирования понятий Shell и т. Д.?

Что именно отличает эти два слова?

Ответы [ 3 ]

29 голосов
/

Эмулятор терминала (часто называемый просто терминалом) - это «просто окно», да. Он запускает текстовую программу, которая по умолчанию является вашей оболочкой для входа в систему (которая является bash в Ubuntu). Когда вы набираете символы в окне, терминал выводит эти символы в окне в дополнение к отправке их в stdin оболочки (или другой программы). Символы, которые оболочка выводит в stdout и stderr, отправляются на терминал, который, в свою очередь, рисует эти символы в окне.

Так что да, оболочка и эмулятор терминала - это совершенно разные программы, и любую из них можно использовать без другой.

8 голосов
/

Я думаю, что этот вопрос был довольно подробно изучен на сайте обмена стеками Unix и Linux: Различия между оболочкой, консолью и терминалом

4 голосов
/

Да, эмулятор терминала и оболочка - две разные программы. Как вы знаете, один из примеров различий состоит в том, что при запуске окна терминала могут запускаться разные оболочки в зависимости от того, что вы настроили (bash, tcsh, ksh, ash, даже python!).

Другое отличие состоит в том, что эмуляторов терминалов больше, чем просто по умолчанию: gnome-терминал, несколько разновидностей xterm, konsole (для KDE) и т. Д. (См .: http://www.howtogeek.com/howto/ubuntu/set-the-default-terminal-emulator-on-ubuntu-linux/). Любая оболочка может быть запущена в любом из этих эмуляторов терминала без особых трудностей.

Третье отличие состоит в том, что, помимо запуска команд оболочки, вы также можете запускать определенные интерактивные приложения в эмуляторе терминала, и они будут работать в том же окне (и все еще полагаться на ту же программу эмулятора терминала, чтобы обрабатывать фактическую графику) такие как текстовый редактор vim, nethack RPG и другие. Если вы хотите, вы можете настроить профиль в эмуляторе терминала для запуска nethack, скажем, автоматически, когда вы открываете новую вкладку; Оболочка не задействована, но эмулятор терминала остается той же программой.

Четвертое отличие состоит в том, что вы можете выполнять удаленный вход в систему, используя такую ​​программу, как ssh, из окна терминала. В этом случае ваша оболочка (или любая другая программа, которую вы запускаете удаленно) работает на другом компьютере, и программа ssh подключает ее к программе эмулятора локального терминала, работающей на вашем компьютере, которая обрабатывает графику.

...