Нет. Сеанс TMUX сохранится в случае сбоя сеанса ssh.
Просто переподключитесь к серверу и подключитесь к сеансу tmux с помощью
List tmux sessions: tmux ls
Attach to tmux session: tmux a
Attach to named session: tmux a -t myname
Вот хорошая шпаргалка:https://gist.github.com/henrik/1967800
Стандарты для чтения: ECMA -35 и ECMA -48. (Термин «ANSI» в значительной степени является неправильным. То же самое относится и к «стилю VT100» для этого случая. )Они объясняют, что управляющая последовательность состоит из четырех частей:
Ввод управляющей последовательности находится в диапазоне так называемых -управляющих символов C1 , значения которых находятся в диапазоне от U+0080 до U+009F.
К середине 1980-х мир терминалов и последовательной связи был почти полностью 8 -битным, во многом благодаря давлению отбора со стороны мира персональных компьютеров, BBS, Фидонета и др. Еще в 1970-х годах, когда соответствие 7 битам все еще было серьезной проблемой, ECMA -38 и ECMA -45 предоставили систему альтернативных 7 -битных кодировок для управляющих символов C1, значения которых не помещались в 7 бит.. Примерно 40 лет спустя это остается окаменелым в символе Escape (␛
), за которым следует [
, являющийся 7-битным -кодированием для CSI.
Вы обнаружите, что существуют альтернативные 7-битные -кодировки для всего диапазона C1. Вы также обнаружите, что есть много людей, которые этого не знают. Есть программы, которые не распознают реальный символ CSI в качестве интродьюсера управляющей последовательности. Есть программы, которые не обрабатывают все 7 -битных кодировок, а только кодировку Control Sequence Introducer. И, с другой стороны, есть несколько программ, которые догнали середину 1980-х годов и распознают фактические управляющие символы C1 , даже если они не закодированы 7 -бит.
Таким образом, разбивая вашу конкретную последовательность управления,:
\033[
— кодировка кодировки,7-битное -кодирование символа CSI , дополнительно закодированное как escape-последовательность в стиле C -, которая обрабатывается оболочкой Bourne Again 01;32
— пять символов параметра m
— последний символ Комбинация промежуточных символов (, возможно, без )и конечного символа обозначает функцию управляющей последовательности. Таких функций довольно много, включая целый набор, который зарезервирован за расширениями вендора. (Из-за указанной выше структуры управляющих последовательностей в потоке могут обрабатываться/пропускаться даже расширения неизвестных поставщиков. )В данном случае это Set Graphic Rendition(SGR ), одна из стандартных управляющих последовательностей.
Символы параметров кодируют по основанию 10 строку числовых параметров, разделенных точкой с запятой -двоеточием -. (На самом деле строка параметров может содержать больше. Двоеточие является допустимым символом параметра, в конце концов, оно имеет значение U+003A. Он используется в более позднем стандарте ITU для обозначения под-параметров . Это действительно применимо к SGR. Точно так же DEC VT используют символ параметра U+003F, ?
в качестве маркера расширения для некоторых вариантов DEC в стандартных управляющих последовательностях. )В случае SGR эти параметры обозначают цвета и атрибуты, которые должны быть установлены для вывода на печать (, т. е. «воспроизведение» «графических» символов ).
Их существует обширный набор, и в данном конкретном случае они означают:
01
— полужирный на 32
— зеленый передний план Здесь следует сделать целое отступление о том, как система отображения CGA на IBM PC и использование совместимых с IBM PC в качестве терминалов привели к тому, что вес шрифта, такой как полужирный, превратился в изменение цвета,условность, которая, к счастью, постепенно исчезает в пользу жирного шрифта, на самом деле означающего еще раз жирный шрифт (, как это было во времена до CGA ). Согласно этому соглашению и, следовательно, на некоторых, но, к счастью, все меньшем количестве эмуляторов терминала, эта последовательность SGR эффективно устанавливает цвет #10, ярко-зеленый, в качестве переднего плана.
Много лет назад эмулятор терминала AIXterm представил SGR с 90 по 97 и со 100 по 107 для установки цветов с 9 по 15 в качестве цветов переднего плана и фона. Мало того, что это 16-цветное соглашение теперь широко распространено, у нас даже было 256 цветовая палитра в течение довольно долгого времени. Более надежный способ получить цвет переднего плана #10 — использовать SGR 92, , а не SGR 1;32.
Обратите внимание, что это не обязательно для подсказок оболочки в целом. Например :Вместо того, чтобы напрямую кодировать определенные управляющие последовательности с экранированием в стиле C -, оболочка Z позволяет пользователю кодировать изменения цвета и атрибутов, используя процентные последовательности в PS1
, RPROMPT
и аналогичные переменные оболочки. для различных подсказок. Оболочка Z ищет соответствующие управляющие последовательности в базе данных terminfo. Таким образом, аналогичная строка подсказки в оболочке Z может выглядеть как:
PS1=%B%F{green}%n@%m%f%bили, если цвет #10 и отсутствие полужирного шрифта — это то, что действительно нужно:
PS1=%F{10}%n@%m%f
Наконец :Это , а не «стиль VT100». Люди слишком часто говорят о VT100 как об обобщении. Это неправильный; это управляющие последовательности ECMA -48, а не «стиль VT100». Важным фактом здесь является, во-первых, то, что VT100 был монохромным и не имел многоцветных -возможностей. Не приобретайте дурную привычку злоупотреблять названиями «vt100» или «vt102».
На основе исследований, которые я выяснил:
\033[01;32m
— Часть управляющего кода ANSI , которой принадлежит \033[01;32m
, называется Выбор графического представления (SGI )Последовательность вывода терминала (, которая имеет код CSI n m
. ].)\033[
— это интродьюсер управляющей последовательности01
— это код для «жирного шрифта или повышенной интенсивности». ;
— разделитель для кодов . Мы можем иметь столько кодов , сколько захотим. Существует таблица для этих кодов на странице Википедии escape-коды ANSI в параметрах Select Graphic Rendition (SGR ). 32
— это код для зеленого текста переднего плана. m
помечает всю последовательность как последовательность CSI n m
SGI.