Какой Linux Shell лучше? Сравнение 5 общих оболочек

1 min


Счастливы использовать оболочку bash в Linux? Или вы бы предпочли попробовать альтернативу? На выбор есть tsch, fish, KornShell и Z Shell. Но какой из этих популярных оболочек Linux лучше?

Что такое оболочка Linux?

Обычно, когда вы пишете приложение, оно выполняется на языке высокого уровня, понятном людям. Примерами этого являются C #, Java, C ++ и т. Д. Хотите верьте, хотите нет, но ваш компьютер видит все как 1 в 0 или, как обычно известно, двоичный или машинный код.

Затем компилятор переведет язык высокого уровня в двоичный файл, такой как исполняемый файл. Этот двоичный файл – то, что вы выполняете, чтобы запустить указанное приложение.

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

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

Таким образом, оболочка является интерфейсом для взаимодействия с операционной системой (ОС). Когда вы вводите команды в оболочку, она отвечает за интерпретацию этих команд и реализацию магии. Операции, такие как копирование файлов, конвейерная обработка, перечисление файлов, находятся в пределах компетенции оболочки.

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

кошка / etc / shells

Чтобы узнать, какую оболочку вы используете в данный момент, наберите:

эхо $ 0

Какая лучшая оболочка для Linux

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

1. Баш

Это на милю самая популярная оболочка среди пользователей Linux. Трудно даже думать об оболочках, если Bourne-Again Shell (bash) не является частью уравнения. Многие дистрибутивы Linux поставляются с bash в качестве оболочки по умолчанию, потому что bash является оболочкой GNU по умолчанию. Выпущенный в 1989 году, он также может похвастаться несколькими десятилетиями здорового развития.

Предшественником Bash является The Bourne Shell (sh), которая является одной из оригинальных оболочек Unix. Одной из привлекательных особенностей для программистов sh было то, что они могли напрямую переносить свои скрипты в bash без изменений. Bash также предлагает несколько улучшений своему предшественнику:

  • Завершение команды
  • История команд

Часто онлайн документация предполагает, что вы используете bash. Однако, это не без его недостатков – как может засвидетельствовать любой, кто когда-либо писал сценарий bash! Дело не в том, что вы не можете что-то сделать, а в том, что читать и писать не всегда особенно элегантно.

2. KornShell

Является ли KornShell лучшей оболочкой Linux?

Обычно известный как ksh, KornShell – это популярная альтернативная оболочка Linux, созданная Bell Labs в 1980-х годах. Существует не так много различий между bash и ksh, но у каждого есть незначительные преимущества перед другим. Ksh, например, имеет команду cd old new. Если вы были в каталоге / Downloads / foo / bar / one / foobar и вам нужно было перейти в / Downloads / foo / bar / two / foobar, вам просто нужно ввести:

CD один два

Ветераны ksh будут пропагандировать его превосходство, упоминая его преимущества сценариев. Это включает:

  • Лучший синтаксис цикла
  • Естественные способы повторения команд
  • Ассоциативные массивы

В отличие от bash, сложно найти помощь для ksh в Интернете. Если вы хотите попробовать ksh, введите:

sudo apt установить ksh ksh

3. Tcsh

Тщ оболочка на Linux

Tcsh может проследить свои корни еще до появления Unix. Это улучшенная версия оболочки C (csh) и функций:

  • Программируемое завершение командной строки
  • Редактирование командной строки
  • Добавление аргументов в псевдонимы
  • Простой доступ к истории команд

Вы можете запустить любую команду, набрав! N, заменив n на соответствующий номер в отображаемой истории. Завершение вкладки истории в tcsh работает, набрав:

!

Это распространяется на последнюю команду, которая началась с буквы «а». Для сравнения, в bash вам нужно будет набрать! A: p, чтобы сначала увидеть команду, а затем !! выполнить это.

Чтобы попробовать tcsh, наберите:

sudo apt установить tcsh tcsh

Tcsh является оболочкой по умолчанию для систем на базе BSD, таких как FreeBSD. Большим преимуществом tcsh является язык сценариев, который пригодится всем, кто занимается программированием на C. Это делает tcsh полезным для создания прототипов небольших программ на C, не путаясь с такими вещами, как, например, какие скобки вы используете. Эта проблема обычно возникает, если вы постоянно переключаетесь между программированием на C и сценариями оболочки.

4. Рыба

Используйте рыбную раковину в Linux

Среди всей серьезности Linux, команда из fish привнесла чувство юмора в свой проект. На их веб-сайте заголовок «насмешка» гласит «Наконец, оболочка командной строки для 90-х», хотя fish («дружественная интерактивная оболочка») была разработана в 2005 году. Помимо рекламируемого «Славного цвета VGA», есть некоторые улучшения по сравнению с другие снаряды:

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

Чтобы узнать, о чем рыба, введите:

судо установить рыбу

5. Z Shell

Z Shell на Linux

Многие считают, что это оставляет лучшую оболочку для последнего, что было бы совершенно понятно. Zsh имеет сходство с bash и ksh и включает в себя многие функции, найденные в них, а также tcsh. Особенности Zsh:

  • Навигационный список автозаполнения
  • Улучшенная орфографическая коррекция
  • Завершение командной строки
  • История делится между терминалами
  • Globbing (подстановочные знаки для имен файлов)

Globbing в Zsh очень полезен. Typing:

VIM / U / L / B / A

Открыл бы файл:

/usr/local/bin/autoupdate.sh

Zsh может занять некоторое время для настройки при первом использовании, если вы не используете конфигурацию по умолчанию. Чтобы попробовать, введите:

sudo apt установить zsh zsh

Какой Linux Shell лучше для меня?

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

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

Когда вы остановитесь на оболочке Linux, убедитесь, что вы знакомы с основами сценариев оболочки.


0 Comments

Добавить комментарий