Kiedy w konsoli musimy uruchomić kilka programów niezwykle przydatnym narzędziem jest program screen. Pozwala on w jednym terminalu utworzyć sporą ilość wirtualnych okien pomiędzy którymi można się w łatwy sposób przełączać. W części dystrybucji jest zainstalowany ale jeśli go nie masz to doinstalujesz (Debian, Ubuntu) poleceniem:
> sudo apt install screen
Program posiada plik konfiguracyjny o domyślnej nazwie „.screenrc”. W tym pliku ustalisz parametry wyświetlania okien, działania klawiszy i inne. Plik może mieć dowolną nazwę, a podasz ją w parametrach uruchomieniowych. Standardowy plik konfiguracyjny nie jest ciekawy i dla tego należy sobie go dostroić. Jeden z moich wygląda jak niżej:
#======================================= hardstatus alwayslastline hardstatus string '%{gk}[ %{G}%H %{g}][%= %{wk}%?%-Lw%?%{=b kR}(%{W}%n*%f %t%?(%u)%?%{=b kR})%{= kw}%?%+Lw%?%?%= %{g}]%{=b C}[ %m/%d %c ]%{W}' termcapinfo xterm|xterms|xs|rxvt ti@:te@ screen -t bash01 bash #=======================================
Po uruchomieniu programu:
> screen
mam ekran jak niżej:
Kolor tła i znaków pochodzi z putty ale ważna jest dolna linia statusu. Wyświetlam na niej nazwę maszyny, nazwy wirtualnych okien terminali, i aktualny czas (aktualizacja tylko w momencie wykonywania dowolnej zmiany na ekranie).
Teraz kilka przydatnych skrótów:
Ctrl-a-c tworzy nowe okno (jego nazwa wyświetla się w czerwonych nawiasach)
Ctrl-a-n następne okno
Ctrl-a-p poprzednie okno
Ctrl-a-d opuszczenie screen’a z pozostawieniem uruchomionych w nim programów
Ctrl-a-A zmiana nazwy aktualnego okna
Aby powrócić do screena wydajemy polecenie
> screen -x
Wyjątkowo przydatną funkcjonalnością jest możliwość uruchomienia i pozostawienia w pamięci wielu instancji screena. Każda ma swój numer. Kiedy już mamy jednego screena uruchomionego, opuszczamy go (Ctrl-a-d) i odpalamy następnego. Można dodać przełącznik -S nadający mu nazwę np:
> screen – SYSTEM
Teraz kiedy uruchomimy screen z opcją -x zobaczymy:
Aby uruchomić konkretną instancję trzeba podać jej nazwę lub numer:
>screen -x 1430
To uruchomi pierwszy screen z listy.
Aby całkowicie zakończyć screena trzeba zakończyć wszystkie programy w nim uprzednio uruchomione a każde wirtualne okno zamknąć za pomocą wysłania EOF czyli Ctrl-d.