ITBlog

IT Blog w tematach różnych...

  • O blogu…
  • Edukacja
    • Moodle – stare
    • Moodle2
    • Testy
  • Firma

screen – przydatne narzędzie na konsolę systemu Linux

Napisane przez Igor Brzeżek on 13 marca 2021
Napisane w: Linux Debian.

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
attrcolor b ".I"
#czerwone tlo np dla roota + zegarek hh:mm:ss
#hardstatus string '%{=b rw}[ %{rw}%H %{rw}][%= %{rw}%?%-Lw%?%{=b rw}(%{=b rY}%n*%f %t%?(%u)%?%{=b rw})%{=b rw}%?%+Lw%?%?%= %{=b rw}]%101` %d-%m-%Y %c:%s'
#czerwone tlo np dla roota + zegarek hh:mm
#hardstatus string '%{=b rw}[ %{rw}%H %{rw}][%= %{rw}%?%-Lw%?%{=b rw}(%{=b rY}%n*%f %t%?(%u)%?%{=b rw})%{=b rw}%?%+Lw%?%?%= %{=b rw}]%101` %d-%m-%Y %c'
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@
shell -$SHELL
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).

Jeśli masz kolorowy znak zachęty np:

to możesz go zachować w screen uruchamiając go poleceniem:

#screen -T xterm

Aby zawsze tak się screen uruchamiał możesz dodać alias do swojego pliku .bashrc albo do pliku aliases:

alias=’screen -T xterm’

 

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.

Nawigacja

← Powiększenie wirtualnego dysku maszyny Linux Debian DEV
Instalacja systemu Linux Debian + niezbędny soft i środowiska IDE dla C/C++ →
  • Szukaj

  • Kategorie

    • IT ogólnie (70)
      • Bezpieczeństwo (9)
      • CCTV (3)
      • Hardware (1)
      • Sieci (9)
        • MikroTik (7)
      • Software (39)
        • Programowanie (1)
        • Systemy operacyjne (15)
          • Linux Debian (14)
        • Windows (7)
      • WiFi (2)
      • Wirtualizacja (26)
  • Ostatnie wpisy

    • Przekierowanie zapytań DNS do lokalnego resolvera
    • Szyfrowanie ruchu DNS za pomocą RouterOS
    • Analiza ruchu DNS na systemie RouterOS
    • MikroTik RouterOS – Generator pakietów
    • Maszyna wirtualna dla RouterOS w wersji ROS v6/7
  • Strona odwiedzona

    od 11.01.2013

  • Doskonała platforma e-learningowa Uzyskaj certyfikat IT

Proudly powered by WordPress Theme: Parament by Automattic.
7ads6x98y