tmux — це програма мултиплексор , дозволяє легко перемикатись між кількома програмами в одному терміналі, від'єднуватись від програм, залишаючи їх у фоні, і приєднувати їх до іншого терміналу і багато іншого. Він є зручним інструментом для одночасного керування багатьма програмами з інтерфейсом командного рядка. tmux є альтернативою GNU Screen, проте розробляється активніше і використовує ліцензію BSD на відміну від (GNU GPL v3) у GNU screen. При запуску tmux створює нову сесію з одним вікном і відображає його на екрані. Внизу екрану відображається лінія статусу з інформацією про поточну сесію, вона також використовується для введення інтерактивних команд.
tmux з трьома панелями | |
Тип | мультиплексор для віртуальних консолей |
---|---|
Розробник | Ніколас Марріотт (Nicholas Marriott) |
Перший випуск | 20 вересня 2009 року |
Операційна система | UNIX-подібні |
GNU фреймворк | Ncurses[1] |
Мова програмування | C |
Ліцензія | BSD |
Репозиторій | github.com/tmux/tmux |
Вебсайт | tmux.sourceforge.net |
|
Сесія tmux — це сукупність «псевдо-терміналів» під управлінням tmux, кожна сесія має одне або кілька «вікон» приєднаних до неї, вікно може бути розділене на кілька прямокутних «панелей», у кожній з яких міститься псевдо-термінал. Будь-яка кількість екземплярів tmux може приєднатись до однієї сесії і будь-яка кількість вікон може знаходитись у ній. tmux виходить при завершення всіх сесій.
Сесії tmux є стійкими і можуть пережити випадкові роз'єднання (наприклад роз'єднання ssh) або навмисне від'єднання (за допомогою комбінації клавіш CTRL+b d). Знову приєднатись до сесії можна за допомогою команди tmux attach
.
tmux відображає сесії за допомогою клієнта і всі сесії управляються за допомогою єдиного сервера, клієнт і сервер є окремими процесами, комунікація яких відбувається через сокет, що міститься в директорії /tmp
.
Поєднання клавіш
tmux може керуватись з підєднаного клієнта, використовуючи комбінації клавіш, що починаються з префікса, стандартний префікс C+b (Ctrl+b), після якого натискається командна клавіша, клавіша-модифікатор (переважно Alt) позначена M
Комбінація | Опис |
---|---|
C-b | Надіслати клієнтові команду-префікс |
C-o | Перемкнутись на наступну панель у поточному вікні |
C-z | Призупинити tmux |
! | Винести панель у окреме вікно |
" | Розділити поточну панель горизонтально навпіл |
# | Перелічити всі буфери вставлення |
$ | Перейменувати поточну сесію |
% | Розділити поточну панель вертикально навпіл |
& | Знищити поточне вікно |
' | Вибрати вікно, ввівши його індекс |
, | Перейменувати поточне вікно |
- | Видалити останній скопійований у буфер текст |
. | Перенести поточне вікно, інтерактивно вказавши індекс |
0 — 9 | Вибрати вікно з вказаним індексом |
: | Викликати командний рядок tmux |
; | Повернутись до попередньої панелі |
= | Інтерактивно вибрати, який буфер вставити |
? | Показати всі поєднання клавіш |
D | Інтерактивно обрати, який клієнт від'єднати |
[ | Перейти у режим копіювання, щоб копіювати текст або переглядати історію |
] | Вставити останній скопійований буфер |
c | Створити нове вікно |
d | Відєднати поточний клієнт |
f | Ввести текст для пошуку в поточному вікні |
i | Показати інформацію про поточне вікно |
l | Перейти до попередньо відкритого вікна вікна |
n | Перейти до наступного вікна |
o | Перейти до наступної панелі в поточному вікні |
p | перейти до попереднього вікна |
q | Тимчасово показати індекси панелей |
r | Примусово оновити поточний клієнт |
s | Інтерактивно обрати нову сесію для клієнта |
L | Повернутись до попередньої підєднаної сесії |
t | Показати час у поточній панелі |
w | Інтерактивно обрати вікно |
x | Знищити поточну панель |
{ | Поміняти місцями поточну панель з попередньою |
} | Поміняти місцями поточну панель з наступною |
~ | Показати попередні повідомлення від tmux |
Page Up | Увійти в режим копіювання і піднятись на один екран вверх |
Клавіші «Вверх», «Вниз», «Вліво», «Вправо» | Переміщення між панелями |
M-n | Переміститись до наступного вікна з сигналом або маркером активності |
M-p | Переміститись до попереднього вікна з сигналом або маркером активності |
M-o | Поміняти місцями панелі поточного вікна у зворотньому напрямку |
C + «Вверх», «Вниз», «Вліво», «Вправо» | Змінити розмір поточної панелі з кроком розміром 1 клітинка |
M + «Вверх», «Вниз», «Вліво», «Вправо» | Змінити розмір поточної панелі з кроком розміром 5 клітинок |
Всі комбінації клавіш можна змінити за допомогю команд bind-key
і unbind-key
. Щоб зробити зміни постійними, їх можна зберегти у конфігураційному файлі .tmux.conf
у домашній директорії користувача.
Функціональність
tmux володіє тим самим функціоналом що і GNU Screen, проте має багато додаткових можливостей, серед них можна виділити наступні:
- Використання клієнт-серверної архітектури, де кожен сервер використовує єдиний сокет і володіє багатьма сесіями, до яких можуть приєднуватись скільки завгодно клієнтів;
- Кращий командний інтерфейс, що дозволяє виконувати більшість команд tmux прямо з терміналу, це полегшує написання скриптів для tmux;
- tmux має багато буферів обміну;
- tmux може автоматично перейменовувати імена вікон відповідно до запущених у них програм;
- можливість використання клавіатурних схем vi та emacs;
- Можливість обмежити розмір вікна;
- Можливість пошуку по тексту у вікні;
- У tmux є поняття «вікно» і «панель», тоді як у GNU screen є тільки вікна. Кожне вікно може містити кілька панелей;
- Статусна лінія tmux легша для сприйняття і використання;
- Вихідний коди tmux більше відповідає сучасним стандартам, відповідно полегшуючи розширення;
- tmux обмежує розмір вікон розмірами терміналу.
Зноски
- tmux source code
Джерела
- Nicholas Marriott. . Архів оригіналу за 31 березня 2014. Процитовано 27 квітня 2014 року.
- . Архів оригіналу за 9 січня 2012. Процитовано 27 квітня 2014 року.
- Nicholas Marriott. . Архів оригіналу за 27 квітня 2014. Процитовано 27 квітня 2014 року.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
tmux ce programa multipleksor dozvolyaye legko peremikatis mizh kilkoma programami v odnomu terminali vid yednuvatis vid program zalishayuchi yih u foni i priyednuvati yih do inshogo terminalu i bagato inshogo Vin ye zruchnim instrumentom dlya odnochasnogo keruvannya bagatma programami z interfejsom komandnogo ryadka tmux ye alternativoyu GNU Screen prote rozroblyayetsya aktivnishe i vikoristovuye licenziyu BSD na vidminu vid GNU GPL v3 u GNU screen Pri zapusku tmux stvoryuye novu sesiyu z odnim viknom i vidobrazhaye jogo na ekrani Vnizu ekranu vidobrazhayetsya liniya statusu z informaciyeyu pro potochnu sesiyu vona takozh vikoristovuyetsya dlya vvedennya interaktivnih komand tmuxtmux z troma panelyamiTipmultipleksor dlya virtualnih konsolejRozrobnikNikolas Marriott Nicholas Marriott Pershij vipusk20 veresnya 2009 rokuOperacijna sistemaUNIX podibniGNU frejmvorkNcurses 1 Mova programuvannyaCLicenziyaBSDRepozitorijgithub com tmux tmuxVebsajttmux sourceforge net Mediafajli u Vikishovishi Sesiya tmux ce sukupnist psevdo terminaliv pid upravlinnyam tmux kozhna sesiya maye odne abo kilka vikon priyednanih do neyi vikno mozhe buti rozdilene na kilka pryamokutnih panelej u kozhnij z yakih mistitsya psevdo terminal Bud yaka kilkist ekzemplyariv tmux mozhe priyednatis do odniyeyi sesiyi i bud yaka kilkist vikon mozhe znahoditis u nij tmux vihodit pri zavershennya vsih sesij Sesiyi tmux ye stijkimi i mozhut perezhiti vipadkovi roz yednannya napriklad roz yednannya ssh abo navmisne vid yednannya za dopomogoyu kombinaciyi klavish CTRL b d Znovu priyednatis do sesiyi mozhna za dopomogoyu komandi tmux attach tmux vidobrazhaye sesiyi za dopomogoyu kliyenta i vsi sesiyi upravlyayutsya za dopomogoyu yedinogo servera kliyent i server ye okremimi procesami komunikaciya yakih vidbuvayetsya cherez soket sho mistitsya v direktoriyi tmp Poyednannya klavishtmux mozhe keruvatis z pidyednanogo kliyenta vikoristovuyuchi kombinaciyi klavish sho pochinayutsya z prefiksa standartnij prefiks C b Ctrl b pislya yakogo natiskayetsya komandna klavisha klavisha modifikator perevazhno Alt poznachena M Kombinaciya Opis C b Nadislati kliyentovi komandu prefiks C o Peremknutis na nastupnu panel u potochnomu vikni C z Prizupiniti tmux Vinesti panel u okreme vikno Rozdiliti potochnu panel gorizontalno navpil Perelichiti vsi buferi vstavlennya Perejmenuvati potochnu sesiyu Rozdiliti potochnu panel vertikalno navpil amp Znishiti potochne vikno Vibrati vikno vvivshi jogo indeks Perejmenuvati potochne vikno Vidaliti ostannij skopijovanij u bufer tekst Perenesti potochne vikno interaktivno vkazavshi indeks 0 9 Vibrati vikno z vkazanim indeksom Viklikati komandnij ryadok tmux Povernutis do poperednoyi paneli Interaktivno vibrati yakij bufer vstaviti Pokazati vsi poyednannya klavish D Interaktivno obrati yakij kliyent vid yednati Perejti u rezhim kopiyuvannya shob kopiyuvati tekst abo pereglyadati istoriyu Vstaviti ostannij skopijovanij bufer c Stvoriti nove vikno d Vidyednati potochnij kliyent f Vvesti tekst dlya poshuku v potochnomu vikni i Pokazati informaciyu pro potochne vikno l Perejti do poperedno vidkritogo vikna vikna n Perejti do nastupnogo vikna o Perejti do nastupnoyi paneli v potochnomu vikni p perejti do poperednogo vikna q Timchasovo pokazati indeksi panelej r Primusovo onoviti potochnij kliyent s Interaktivno obrati novu sesiyu dlya kliyenta L Povernutis do poperednoyi pidyednanoyi sesiyi t Pokazati chas u potochnij paneli w Interaktivno obrati vikno x Znishiti potochnu panel Pominyati miscyami potochnu panel z poperednoyu Pominyati miscyami potochnu panel z nastupnoyu Pokazati poperedni povidomlennya vid tmux Page Up Uvijti v rezhim kopiyuvannya i pidnyatis na odin ekran vverh Klavishi Vverh Vniz Vlivo Vpravo Peremishennya mizh panelyami M n Peremistitis do nastupnogo vikna z signalom abo markerom aktivnosti M p Peremistitis do poperednogo vikna z signalom abo markerom aktivnosti M o Pominyati miscyami paneli potochnogo vikna u zvorotnomu napryamku C Vverh Vniz Vlivo Vpravo Zminiti rozmir potochnoyi paneli z krokom rozmirom 1 klitinka M Vverh Vniz Vlivo Vpravo Zminiti rozmir potochnoyi paneli z krokom rozmirom 5 klitinok Vsi kombinaciyi klavish mozhna zminiti za dopomogyu komand bind key i unbind key Shob zrobiti zmini postijnimi yih mozhna zberegti u konfiguracijnomu fajli tmux conf u domashnij direktoriyi koristuvacha Funkcionalnisttmux volodiye tim samim funkcionalom sho i GNU Screen prote maye bagato dodatkovih mozhlivostej sered nih mozhna vidiliti nastupni Vikoristannya kliyent servernoyi arhitekturi de kozhen server vikoristovuye yedinij soket i volodiye bagatma sesiyami do yakih mozhut priyednuvatis skilki zavgodno kliyentiv Krashij komandnij interfejs sho dozvolyaye vikonuvati bilshist komand tmux pryamo z terminalu ce polegshuye napisannya skriptiv dlya tmux tmux maye bagato buferiv obminu tmux mozhe avtomatichno perejmenovuvati imena vikon vidpovidno do zapushenih u nih program mozhlivist vikoristannya klaviaturnih shem vi ta emacs Mozhlivist obmezhiti rozmir vikna Mozhlivist poshuku po tekstu u vikni U tmux ye ponyattya vikno i panel todi yak u GNU screen ye tilki vikna Kozhne vikno mozhe mistiti kilka panelej Statusna liniya tmux legsha dlya sprijnyattya i vikoristannya Vihidnij kodi tmux bilshe vidpovidaye suchasnim standartam vidpovidno polegshuyuchi rozshirennya tmux obmezhuye rozmir vikon rozmirami terminalu Znoskitmux source codeDzherelaNicholas Marriott Arhiv originalu za 31 bereznya 2014 Procitovano 27 kvitnya 2014 roku Arhiv originalu za 9 sichnya 2012 Procitovano 27 kvitnya 2014 roku Nicholas Marriott Arhiv originalu za 27 kvitnya 2014 Procitovano 27 kvitnya 2014 roku