Поиск по сайту:

Какие существуют типы оболочек в Linux?


Оболочки являются важной частью любого пользовательского сеанса Linux. Нам предоставляется несколько разных типов оболочек в Linux для выполнения задач. Каждая оболочка имеет уникальные свойства. Следовательно, во многих случаях одна оболочка лучше другой для определенных требований.

Поэтому нам важно знать о различных типах оболочек, доступных в Linux. В этом уроке мы обсудим, что такое оболочка и почему она важна.

Далее мы рассмотрим различные типы оболочек в Linux, чтобы понять их функции и свойства.

Что такое оболочка и зачем она нам нужна?

Всякий раз, когда пользователь входит в систему или открывает окно консоли, ядро запускает новый экземпляр оболочки. Ядро — это сердце любой операционной системы.

Он отвечает за управление контролем и выполнением процессов, а также за обеспечение надлежащего использования системных ресурсов.

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

Возможность взаимодействия с ядром делает оболочки мощным инструментом. Без возможности взаимодействия с ядром пользователь не может получить доступ к утилитам, предлагаемым операционной системой его машины.

Давайте разберемся с основными оболочками, доступными для среды Linux.

Различные типы оболочек в Linux

Если теперь вы понимаете, что такое ядро, что такое оболочка и почему оболочка так важна для систем Linux, давайте перейдем к изучению различных типов доступных оболочек.

Каждая из этих оболочек обладает свойствами, которые делают их более эффективными для определенного типа использования по сравнению с другими оболочками. Итак, давайте обсудим различные типы оболочек в Linux, а также их свойства и функции.

1. Оболочка Борна (sh)

Оболочка Bourne, разработанная в AT&T Bell Labs Стивом Борном, считается первой оболочкой UNIX. Обозначается ш. Он завоевал популярность благодаря своей компактности и высокой скорости работы.

Это то, что сделало его оболочкой по умолчанию для ОС Solaris. Он также используется в качестве оболочки по умолчанию для всех сценариев системного администрирования Solaris. Начните читать о сценариях оболочки здесь.

Однако у оболочки Bourne есть несколько существенных недостатков.

  • В нем нет встроенных функций для обработки логических и арифметических операций.
  • Кроме того, в отличие от большинства различных типов оболочек в Linux, оболочка Bourne не может вызывать ранее использовавшиеся команды.
  • Ему также не хватает комплексных функций для правильного интерактивного использования.

Полное имя пути для оболочки Bourne: /bin/sh и /sbin/sh. По умолчанию используется приглашение # для пользователя root и $ для пользователей без полномочий root.

2. Оболочка GNU Bourne-Again (bash)

Более известная как оболочка Bash, оболочка GNU Bourne-Again была разработана для совместимости с оболочкой Bourne. Он включает в себя полезные функции различных типов оболочек Linux, таких как оболочка Korn и оболочка C.

Это позволяет нам автоматически вызывать ранее использованные команды и редактировать их с помощью клавиш со стрелками, в отличие от оболочки Bourne.

Полный путь к оболочке GNU Bourne-Again — /bin/bash. По умолчанию используется приглашение bash-VersionNumber# для пользователя root и bash-VersionNumber$ для пользователей без полномочий root.

3. Оболочка C (csh)

Оболочка C была создана Биллом Джоем в Калифорнийском университете. Обозначается как csh. Он был разработан для включения полезных функций программирования, таких как встроенная поддержка арифметических операций и синтаксис, аналогичный языку программирования C.

Кроме того, он включал историю команд, которая отсутствовала в различных типах оболочек Linux, таких как оболочка Bourne. Еще одна заметная особенность оболочки C — «псевдонимы».

Полный путь к оболочке C: /bin/csh. По умолчанию используется приглашение hostname# для пользователя root и hostname% для пользователей без полномочий root.

4. Оболочка Korn (кш)

Оболочка Korn была разработана в AT&T Bell Labs Дэвидом Корном для улучшения оболочки Bourne. Обозначается как кш. Оболочка Korn, по сути, представляет собой надмножество оболочки Bourne.

Помимо поддержки всего, что будет поддерживаться оболочкой Bourne, он предоставляет пользователям новые функции. Он обеспечивает встроенную поддержку арифметических операций, предлагая интерактивные функции, аналогичные оболочке C.

Оболочка Korn запускает сценарии, созданные для оболочки Bourne, предлагая операции со строками, массивами и функциями, аналогичные языку программирования C. Он также поддерживает сценарии, написанные для оболочки C. Кроме того, это быстрее, чем большинство различных типов оболочек в Linux, включая оболочку C.

Полный путь к оболочке Korn: /bin/ksh. По умолчанию используется приглашение # для пользователя root и $ для пользователей без полномочий root.

5. Оболочка Z (zsh)

Z Shell или zsh — это расширение оболочки sh с множеством улучшений для настройки. Если вам нужна современная оболочка, обладающая всеми функциями, гораздо больше, оболочка zsh — это то, что вам нужно.

Некоторые заслуживающие внимания особенности оболочки z включают в себя:

  • Создавать имена файлов на основе заданных условий
  • Подключаемые модули и поддержка тем
  • Указатель встроенных функций
  • Завершение команды
  • и многое другое…

Давайте суммируем различные оболочки в Linux, которые мы обсуждали в этом руководстве, в таблице ниже.

Shell Complete path-name Prompt for root user Prompt for non root user
Bourne shell (sh) /bin/sh and /sbin/sh # $
GNU Bourne-Again shell (bash) /bin/bash bash-VersionNumber# bash-VersionNumber$
C shell (csh) /bin/csh # %
Korn shell (ksh) /bin/ksh # $
Z Shell (zsh) /bin/zsh <hostname># <hostname>%

Подведение итогов

Оболочки — один из, если не самый мощный инструмент, доступный пользователю Linux. Без оболочек человеку практически невозможно использовать возможности и функциональные возможности, предлагаемые ядром, установленным в его системе.

Хотя мы рассмотрели только наиболее часто используемые типы оболочек в Linux, есть много других типов оболочек, заслуживающих изучения.

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