Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Yo dawg, I heard you like terminals...

... so we've put a terminal in your terminal...

Jakiś czas temu kolega webnull pisał o programie GNU Screen. Omówił go pod kątem uruchamiania trwałych (nie mam pomysłu na ładniejsze tłumaczenie "persistent", a tylko to słowo przychodzi mi do głowy) procesów na serwerach. Ja chciałbym się mu przyjrzeć z punktu widzenia codziennego użytkowania komputera. Właściwie to nie tyle Screenowi, co ogólnie multiplekserom terminala, a zwłaszcza programowi tmux, bo obecnie z niego korzystam. Ludzie z alergią na terminal mogą przestać czytać w tym miejscu, bo dalej nie będzie dla nich nic ciekawego.

Na samej klawiszologii nie będę się skupiał, gdyż mam już wszystko tak poustawiane, że nie pamiętam domyślnych przypisań.

Zastosowania

1) Manager okien

Jest to mój główny powód do korzystania z tmuksa. Dzięki niemu mogę mieć uruchomione wiele programów w jednym terminalu (przez terminal rozumiem okno, nie shell). W najprostszym przypadku mogę mieć otwarte jedno okno naraz, ale nic nie stoi na przeszkodzie, by zrobić tzw. split, czyli kilka okien obok siebie. Jest bardzo wygodne np. przy programowaniu - w splicie na górze ekranu (zajmującym jakieś 75% wysokości) mam vima, a na dole sobie kompiluję*. Wielu pewnie już ma pomysł na inne zastosowanie splitów.
*) Wiem, że mogę kompilować z poziomu vima, ale czasem tak mi jest wygodniej.

Oto przykład z trzema splitami - ncmpcpp, vim i htop:

Jest nawet specjalny program napisany jako manager okien w terminalu - dvtm. Jest to multiplekser, który został pozbawiony niemal wszystkich funkcji poza robieniem splitów. Używa się go bardzo podobnie jak managera okien awesome, który postaram się w swoim czasie omówić.

2) Sesje współdzielone

Bardzo praktyczną opcją jest możliwość oglądania jednej powłoki przez wiele osób - wystarczy się podłączyć komendą 'tmux attach' lub 'screen -x' (zależnie od używanego programu). Sam to wykorzystuję gdy komuś coś konfiguruję (lub na odwrót). Dobrze jest widzieć co robi druga osoba - można zawsze się czegoś nauczyć. Poza tym, działa to też jako prowizoryczny chat gdy trzeba się na szybko porozumieć. ;)

3) Plan B

Przytoczę przykład z życia wzięty. Od kilku tygodni mój system bardzo nie lubi gdy wyciągam pendrive i często wtedy crashuje Xy. Co się dzieje wtedy z tym, co robiłem, chyba mówić nie muszę. Dobrym pomysłem jest włączanie wszystkiego wewnątrz tmuksa. Wykorzystuję tutaj cechę opisaną przez webnulla. Po restarcie Xów mogę się zwyczajnie podłączyć do sesji i kontynuować pracę. Podejrzewam, że ten mały trik może nam wydłużyć życie nawet o kilka lat - wystarczy pomyśleć ile mniej się stresujemy. :D

Podsumowanie

Podejrzewam, że znalazłoby się jeszcze wiele zastosowań, o których teraz nie pomyślałem. Wszystkie powyższe rzeczy można z mniejszym lub większym wysiłkiem zrobić również w Screenie. Jeśli się nie mylę, oficjalnie nie wspiera on pionowych splitów, a one same działają na nieco innej zasadzie, ale poza tym ma podobne możliwości. Zachęcam do eksperymentowania we własnym zakresie.

Na zakończenie wymienię programy tego typu warte wspomnienia:GNU Screen: Dziadek muksów terminala. Zdaje mi się, że nie jest już rozwijany, ale jest dość dojrzałym programem.tmux: Można go określić następcą Screena. Jeśli kogoś to obchodzi, jest na licencji BSD (wszyscy to zawsze podkreślają, to nie będę się odcinał xD). Ma wiele ulepszeń względem Screena, ale brakuje mu też paru opcji (hardcopy? log?). Mam złe doświadczenia z wersjami wyższymi niż 1.1, ale nie używałem 1.4, więc może poprawili.dvtm: Mux skupiający się na splitach. Warto zobaczyć, ale nic specjalnego.Byobu: Tak naprawdę jest to prekonfigurowany Screen. Warto zobaczyć do czego jest zdolny, ale proponuję własnoręcznie go skonfigurować. 

linux oprogramowanie

Komentarze

0 nowych
Chomik   4 #1 15.02.2011 22:27

Fajna sprawa. Nigdy nie korzystałem z multiplekserów terminala, a już widzę kilka ciekawych zastosowań. Dzięki za podpowiedź :)

niewyżytyzwierz   3 #2 15.02.2011 23:09

nie lubię kiedy ktoś używa na polskich strona angielskiego tam, gdzie nie jest to konieczne, a sam tmuks jest bardzo fajny

roobal   15 #3 15.02.2011 23:38

Kiedyś gdzieś czytałem o tym Tmux, nie pamiętam niestety gdzie, chyba na jakilinux.org i chciałem sobie go potestować ale nie pamiętałem nazwy, dzięki za przypomnienie, w wolnej chwili sobie go obczaję.

Pozdrawiam!

PS. Bardzo dobry wpis, oryginalny przynajmniej. Tak trzymać! :)

OtherCoder   5 #4 16.02.2011 00:34

Dla mnie nic ten wpis nie wnosi nowego ale dzięki za to kilka nowych osób się z tym zaznajomi bo temat wart uwagi a wykorzystywany przez niewiele osób

RubasznyRumcajs   6 #5 16.02.2011 00:46

dzieki za info o Tmuksie- wiedzialem ze istnieje Screen, ale o Tx nie mialem zielonego pojecia. swoja droga
"(...)Od kilku tygodni mój system bardzo nie lubi gdy wyciągam pendrive i często wtedy crashuje Xy. Co się dzieje wtedy z tym, co robiłem, chyba mówić nie muszę.(..)"

czyli- jednym slowem- linux jest super stabilny na desktop.

Vifon   5 #6 16.02.2011 00:53

@RubasznyRumcajs
Czyli jednym słowem - za dużo grzebałem w systemie. Linux mnie nauczył, że jeśli mi coś nie działa, to jest to moja wina. Od tego, co ja czasem robię, wszystko by padło. ;)

A tak do wszystkich jeszcze: dzięki za dobre słowa. Motywują do dalszego pisania. :)

lubicz   4 #7 16.02.2011 07:25

@Vifon
To je dobre Panie!!! Wreszcie coś innego i ciekawego. :]

Karach   3 #8 16.02.2011 10:09

Właśnie takiego programu mi brakowało. Dzięki za jego prezentację, już się instaluje. ;)

Jaahquubel_   13 #9 16.02.2011 10:47

Wpis dobry. Nie wiem, czy skorzystam z tego rozwiązania, ale wiedzieć dobrze.

Na pierwszej instalacji Ubuntu tak zaszalałem, że rozwaliłem KDE - programy napisane pod KDE mi nie wstawały. Od tamtej pory staram się bardziej szanować system.

@RubasznyRumcajs
Z systemami linuksowymi można zrobić co się chce - rozwalić też. Nikt cię nie ogranicza.

@Vifon
Ale Xy to może jednak spróbuj naprawić. :)

  #10 01.03.2011 19:28

mogłeś cały artykuł napisać po angielsku, a nie mieszać języki, bo dla mnie (i przypuszczam że nie tylko dla mnie) to przykład prostactwa.

  #11 13.09.2011 22:16

Polecam zapoznać się z programem Terminator.

pzdr!