Ты даже не знал, что можешь: 4 супероболочки для Linux, которые круче Bash и Zsh!

Linux mascot wearing sunglasses and using a laptop, surrounded by floating windows with the i3 Window Manager logo in the background.

Думаете, кроме Bash и Zsh в Linux выбирать не из чего? На самом деле оболочка — это ещё одна программа, которую можно легко заменить на более удобную или свежую. Порой результаты реально удивляют!

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

Fish: интуитивная и яркая командная строка

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

Устанавливается Fish буквально одной командой: brew install fish, pacman -S fish, dnf install fish или скачайте пакет для своей системы.

А если ищете дистрибутив, где Fish уже стоит по умолчанию, присмотритесь к CachyOS.

После установки просто введите fish в терминале — вас встретит новая красочная строка с кучей удобных функций прямо из коробки.

A fish session showing autocomplete for a git command that is contextually aware of the current repository.

Главные плюсы Fish — это подсветка синтаксиса и продвинутый автодопуск. Fish сразу покажет опечатку или неверную команду, подскажет ошибку в скобках. Автодополнение предлагает не только ключи к командам, но и цели из Makefile — удобно, как нигде.

Здесь написание скриптов становится по-настоящему простым. В отличие от других оболочек, где вид приглашения задаётся сложной строкой, в Fish его настраивает функция. Благодаря этому можно сделать приглашение гораздо гибче и информативнее, чем в классических shell.

Wish: командная строка для работы с графикой

Довольно необычная оболочка, зато настоящая находка для тех, кому хочется попробовать что-то новое. Wish — часть инструментов Tcl/Tk для создания графических окон; с её помощью классическая командная строка превращается в мост к миру кроссплатформенных GUI.

Интересный момент: Wish, скорее всего, уже есть на вашем компьютере. Она входит в стандартный набор Tcl/Tk, а эти пакеты предустановлены почти во всех дистрибутивах, а также на macOS.

В интерактивном режиме Wish позволяет выполнять отдельные команды и полноценные Tcl/Tk-скрипты. Даже простую GUI-программу (например, открыть красное окно с жёлтым прямоугольником) можно написать в пару строк прямо в терминале.

Это решение прежде всего для программистов на Tcl/Tk и тех, кто хочет попробовать себя в этом. Быстро создавать простые графические приложения прямо из терминала — особенно удобно, если хочется поэкспериментировать с кроссплатформенной графикой. Wish заметно облегчает этот путь, как ни одна другая оболочка.

Elvish: когда командная строка умнее вас

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

Для установки скачайте специальный скрипт — он есть для каждого дистрибутива.

Первое, что бросается в глаза: приглашение Elvish показывает и имя пользователя, и имя хоста, но по-настоящему вау-эффект производит автодополнение.

Elvish’s autocomplete feature showing a grid of possible completions for a command beginning "ls."

При нажатии Tab появляется сетка с подсказками — команды и файлы на выбор. История команд просматривается в пару кликов, легко фильтруется по набранным символам, а отдельная история директорий моментально вернёт к нужной папке.

Elvish showing a short list of paths that have recently been visited.

Но Elvish этим не ограничивается — здесь настоящая работа со структурированными данными. В большинстве оболочек всё превращается в текст, а тут вы работаете со строками, числами, логическими значениями, списками, отображениями и даже функциями — как с самостоятельными объектами.


Подпишитесь на рассылку, чтобы не пропускать новые супервозможности shell

В Elvish передавать данные можно не только через привычный вывод, но и по специальному «каналу значений». Команда put, в отличие от echo, выдаёт сложные структуры. Это делает ваши скрипты надёжнее, код — чище, без вечных преобразований строк туда-сюда.

Xonsh: рай для тех, кто живёт на Python прямо в терминале

Ещё одна оболочка для поклонников своего языка — Xonsh объединяет командную строку и Python в одном окне. Это настоящий «Shell на Python» и «Python в Shell» одновременно — возможности такого гибрида впечатляют.

len($(curl -Ls https://xon.sh)) В этом примере обычная питоновская функция len применяется к результату команды curl — всё максимально естественно и просто. Как и в Wish, тут можно запускать и привычные команды, и чистый Python-код — переключаться между ними можно в любой момент.

A combination of programs and Python expressions, both run as commands in the Xonsh shell.

Xonsh радует отличным интерактивным учебником — здесь не просто справка, а целые пошаговые проекты для практики: от истории команд до расширений и событий.

Python легко учить, так что Xonsh — супервариант для того, кто только знакомится с программированием под shell.

Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!

Премиум подписка — это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!

Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь

Также подписывайтесь на нас в:

Алекс Бежбакин
Оцените автора
Добавить комментарий