Screen polecenia
Program, który umożliwia nam utworzenie na jednej sesji kilku powłok shella w oknach, między którymi możemy się szybko przełączać. Screen jest się bardzo przydatny gdy chcemy się rozłączyć i utrzymać pracującą sesję np. pobieranie danych lub inny proces wymagający zalogowania, od nohup’a różni go to że można powrócić do aplikacji pracującej w screenie.
Screena uruchamiamy tak:
|
$ screen program $ screen -S nazwa #jeżeli chcemy nazwać screen jakoś sensownie, przydaje się gdy mamy kilka screenów)
|
Bezpośrednio po uruchomieniu mamy dostęp do powłoki systemowej (chyba że podaliśmy program który chcemy uruchomić), od tego momentu każdy uruchamiany program będzie w przypadku rozłączenia działał w tle. Aby po zalogowaniu przywołać naszego screena:
|
$ screen -r nazwa
|
Czasami podczas rozłączenia może się zdarzyć, że screen nie będzie „uśpiony” w tle, w takim wypadku musimy użyć polecenia z parametrem „d” (detach), w celu uśpienia go/pozbycia się z innych konsoli przed przywołaniem do bieżącej:
|
$ screen -dr nazwa
|
Jeżeli chcemy np. uruchamiac program w screenie z crona bądź skryptu można użyć opcji:
|
$ screen -S nazwa -d -m program
|
Klawiszologia
Przydatne polecenia w screenie.
|
Ctrl-a d Usypia screen'a zachowując wszystkie aplikacje w tle
Ctrl-a c Tworzy nowe okno z powłoką systemową
Ctrl-a n Przechodzi do następnego okna
Ctrl-a [spacja] Przechodzi do następnego okna
Ctrl-a p Przechodzi do poprzedniego okna
Ctrl-a " Wyświetla listę okien
Ctrl-a A Zmienia nazwę aktywnego okna
Ctrl-a S Dzieli konsolę na 2 części
Ctrl-a [TAB] Przenosi kursor do kolejnej części podzielonego ekranu
Ctrl-a X Zamyka aktywną część podzielonego ekranu
Ctrl-a x Blokada screena aż do wpisania hasła
Ctrl-a K zabicie aktywnego okna"
|
Konfiguracja
Konfiguracja screena znajduje się w - .screenrc w $HOME
|
#wyłączyć wiadomość powitalną
startup_message off
#pasek statusu w ostatniej linijce
caption always "%{= kw}%-w%{= BW}%n %t%{-}%+w %-= @%H - %D %d %M - %c"
#Skrót Ctrl-a przy częstym używaniu staje się męczący.
#Można go zmienić na inny nie wymagający użycia Ctrl,
#np. na `. Samo ` w oknie mozna uzyskac przez ``
escape "``"
#w oknie nr 1 uruchomić emacsa bez buforu przewijania
screen -h 0 1 emacs -nw
# wyłączyć migający ekran po wciśnięciu <tab>
vbell off
|
Scrollback w Putty
Niektórzy pewnie zauważyli, że po włączeniu screen’a przestaje działać scrollback. Screen posiada swoją własną historię ekranu, trzymaną oddzielnie dla każdego okna. Aby ją przeglądać, należy użyć kombinacji klawiszy „Ctrl-a [„. Następnie można przemieszczać się przy użyciu klawiszy strzałek, page up/down, home, end oraz / (wyszukiwanie). Wyjście z tego trybu następuje przez wciśnięcie „Ctrl-c”.