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

Что, кстати, также традиционно является предметом для критики СПО. Мол, зачем пользователю нужно несколько десятков разных эмуляторов терминала (для краткости их всё чаще называют просто терминалами)? Тем более что разница между ними достаточно условна. И даже некоторые поклонники Linux считают, что избыточность в данном случае вредна.

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

Во-первых, разнообразие даёт ИТ-подразделению широкую возможность выбора. Что, в свою очередь, иногда позволяет несколько сократить «зоопарк ПО». Допустим, по ряду объективных причин в компании используется несколько разных рабочих столов. Это означает, что приходится поддерживать и несколько «родных» для каждого рабочего стола терминалов. Но если заменить их на универсальный xterm, то задача упрощается.

Во-вторых, даже на одну рабочую станцию иногда бывает целесообразно установить несколько терминалов. Например, для того, чтобы одновременно использовать несколько shell. Конечно, есть и другие способы, но они менее удобны.

В-третьих, нельзя сбрасывать со счёта банальный человеческий фактор. У каждого пользователя есть свои субъективные предпочтения, с которыми необходимо считаться. Особенно в компаниях, где широко практикуются мобильные и удалённые методы работы.

Xterm, urxvt...

Xterm и urxvt — терминалы для среды X Window. Это означает, что они будут одинаково функционировать в любом рабочем окружении. Не исключено, что именно по этой причине их предпочитают опытные пользователи Linux.

Xterm считается стандартным терминалом Linux. Программа входит практически во все дистрибутивы и зачастую именно с неё начинается знакомство с этой ОС.

С точки зрения неопытного пользователя у этой программы есть один существенный недостаток — её настройка производится посредством ручной правки файла .Xresources. А вот для системного администратора это, напротив, большой плюс, поскольку чем дальше спрятаны опции, тем меньше вероятность того, что пользователь всё испортит.

Тем не менее, конфигурирование Xterm — довольно простая задача даже для новичка. Программа прекрасно документирована — совсем ленивые могут найти в сети готовый пример и изменить интуитивно понятные опции на свой вкус.

Urxvt — форк терминала rxvt с поддержкой Unicode. Настраивается он точно так же, как и xterm — ручной правкой файла .Xresources. Несмотря на свою лаконичность, urxvt поддерживает даже полупрозначность, поэтому при желании пользователя он будет смотреться на рабочем столе весьма эффектно.

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

Konsole, GNOME terminal, LXTerminal, Xfce terminal...

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

В частности, штатный терминал KDE Konsole используют другие приложения этого рабочего стола: Konqueror, Kate, Dolphin и KDevelop. Подобный подход существенно расширяет возможности программ и делает их использование максимально комфортным.

Разумеется, Konsole интегрирован в KDE не только технически, но и концептуально. Достаточно взглянуть на систему настроек этого терминала — сразу становится понятно, что опций там настолько много, что настроить можно всё, что только настраивается. Причём, не прибегая к ручному редактированию файла конфигурации.

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

Guake, Tilda, Yakuake, Yeahconsole...

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

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

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

Особняком в ряду выпадающих терминалов стоит YeahConsole, который сам по себе не является полноценным терминалом, а служит только оболочкой для терминала, в роли которого может выступать xterm, urxvt и др., превращая его в выпадающую консоль. Метод настройки этой программы аналогичен конфигурированию xterm — пользователю нужно вручную отредактировать файл .Xresources.

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

Terminator, qterminal, sakura, termit, terminology...

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

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

terminology наверняка понравится любителям всевозможных украшений, реализуемых через визуальную систему настроек. Хотя и в нём реализована многооконность, как в Terminator.

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

Таким образом, получается ещё один небесполезный терминал для каких-то специфических задач. И только пользователю решать, как ему удобней работать — с одним терминалом или с четырьмя. Главное, чтобы это сказывалось положительно на результате.