Разница между Bash и Shell (с таблицей)

Оглавление:

Anonim

Оболочка - это интерфейс командной строки, который позволяет нам запускать команды, программы и сценарии оболочки. Оболочки бывают разных видов, как и операционные системы. Каждая оболочка имеет свой собственный набор команд и хорошо известных функций. Оболочка Борна известна как «оболочка», поскольку это была первая оболочка, дебютировавшая на компьютерах Unix. В большинстве версий Unix оболочка Bourne устанавливается как / bin / sh.

Баш против Шелл

Разница между bash и Shell в том, что Bash - это надмножество sh, что означает, что он поддерживает функциональность sh, а также добавляет дополнительные расширения. Большинство команд работают так же, как и в sh, тогда как оболочка - это интерфейс между пользователем и операционной системой, который позволяет пользователю взаимодействовать с компьютером. Нам понадобится эмулятор терминала, например gnome-terminal, console или st, для взаимодействия с оболочкой.

Bash - это оболочка, созданная как усовершенствование приложения Bourne Shell «sh». Оно более функционально, чем Bourne Shell, с точки зрения программирования и интерактивного использования. Он предлагает такие функции, как редактирование из командной строки, привязки клавиш и бесконечную историю команд. Для большинства дистрибутивов Linux и macOS от Apple Bash является оболочкой входа по умолчанию. Он также доступен для Windows 10 с версией Solaris 11 и пользовательской оболочкой по умолчанию.

Оболочка - это программное обеспечение, которое позволяет пользователям операционной системы получать доступ к службам ядра через пользовательский интерфейс. Оболочка может быть вызвана командой оболочки в интерфейсе командной строки (CLI) в ОС на базе Unix или Linux, что позволяет людям управлять операциями с помощью определенных команд, текста или сценария. У языков программирования есть свои оболочки, которые обеспечивают им независимость от операционной системы и обеспечивают межплатформенное взаимодействие.

Таблица сравнения между Bash и Shell

Параметры сравнения

Баш

Оболочка

Типы Имеет 4 категории. Он имеет 2 основные категории.
Имя Bourne Again Shell Bourne Shell или просто «Ракушка».
Функциональность Он имеет больше функциональности с повышением уровня. У него меньше функциональности.
Разработчик Brain Fox Стивен Р. Борн
Форма установки / bin / bash / bin / sh
Управление работой Bash Shell поддерживает управление заданиями. Bourne Shell не поддерживает управление заданиями.
История команд Оболочка Bash поддерживает историю команд. Оболочка не поддерживает историю команд.

Что такое Баш?

BASH расшифровывается как Bourne Again Shell, умный термин, отдающий дань уважения Bourne Shell. Bash - это программа оболочки, разработанная Брайаном Фоксом как обновление приложения Bourne Shell «sh». Это проект GNU с открытым исходным кодом. Впервые он был представлен в 1989 году как один из самых популярных дистрибутивов оболочки GNU / Linux. Он более функциональный, чем Bourne Shell, с точки зрения программирования и интерактивного использования.

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

Bash совместим с sh, поскольку основан на исходной оболочке Bourne Shell для UNIX. Он обладает лучшими и наиболее полезными функциями оболочек Korn и C, такими как управление каталогами, управление заданиями, псевдонимы и т. Д. Привязки клавиш в Bash позволяют создавать настраиваемые последовательности клавиш редактирования. Bash имеет одномерные массивы, которые упрощают доступ к спискам данных и их обработку.

История недавно посещенных каталогов в списке задается стеком каталогов в Bash. Например, толкать встроенный используется для добавления каталога в стек, popd встроенный используется для удаления каталога из стека, а dirs встроенный используется для отображения содержимого стека каталогов.

Что такое Шелл?

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

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

Оболочка выдает приглашение $, иногда известное как командная строка. Вы можете ввести команду, пока отображается подсказка. После того, как вы нажмете Enter, Shell прочитает ваш ввод. Он смотрит на первое слово вашего ввода, чтобы решить, какую команду вы хотите запустить. Слово - это непрерывная строка символов. Слова разделяются пробелами и табуляциями. Сценарии оболочки должны включать определенные обязательные структуры, которые инструктируют среду оболочки, что и когда делать. Однако большинство сценариев сложнее, чем приведенный выше.

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

Основные различия между Bash и Shell

Вывод

Исходная оболочка UNIX - это оболочка Bourne (sh), написанная Стивеном Р. Борном из AT&T Bell Labs. Из-за своего минимализма и скорости это рекомендуемая оболочка для программирования оболочки. Оболочка Bourne имеет один недостаток: в ней отсутствуют интерактивные функции, такие как возможность запоминания истории команд. Кроме того, в оболочке Bourne отсутствует встроенная поддержка арифметических и логических выражений.

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

использованная литература

Разница между Bash и Shell (с таблицей)