Uruchamianie poleceń na Putty bez obawy utraty połączenia

13

Jak skutecznie używać polecenia „screen”?
Czy to jest:

  1. Wpisz „screen”

  2. Wpisz polecenie

  3. Utrac połączenie

  4. Sprawdź ponownie utraconą sesję

Jak wykonać krok 4?

quack quixote
źródło

Odpowiedzi:

18

Z ekranem:

  1. screen
  2. rodzaj command
  3. Ctrl- A- Daby odłączyć od ekranu
  4. wyloguj się z sesji
  5. screen -RD aby ponownie podłączyć się do ekranu (jeśli jest więcej niż jedna, otrzymasz listę bieżących sesji ekranu i będziesz musiał podać numer sesji) z nowej sesji

Prostszą metodą, która jest przydatna w przypadku poleceń, które opuszczają pliki dziennika lub po prostu generują odpowiednie wyniki i nie wymagają interakcji nohup:

  1. nohup command > logfile &
  2. Wyloguj się z sesji
  3. tail -f logfile z nowej sesji
Vinko Vrsalovic
źródło
Uwaga: krok 3 jest całkowicie opcjonalny. Jeśli zamkniesz sesję PuTTY bez odłączania, nadal możesz połączyć się ponownie screen -RD.
Duncan Jones
4

Ekran jest naprawdę potężny i pozwala robić dokładnie to, o co prosiłeś.

Aby zobaczyć wszystkie sesje, wpisz

screen -list

Po zidentyfikowaniu sesji ekranowej do ponownego nawiązania połączenia spróbuj

screen -dr SCREENID

który ładnie odłączy i ponownie załączy sesję.

Możesz też zrobić mniej przyjemne,

screen -D -R

który odłączy się i wyloguje zdalnie, jeśli będzie to konieczne, a następnie podłącz ponownie, lub jeśli ta sesja nie istnieje, utworzy ją i powiadomi użytkownika. Możesz dodać „-t NAME”, aby nadać tytułom powłoki lub programy.

W obrębie ekranu użyj

command-c

aby utworzyć nowe okno (więc nie potrzebujesz 4000000 sesji ekranowych, aby się rozłączyć i połączyć ponownie) i przełączać się między nimi za pomocą

command-int

Indeksowanie od 0, oczywiście: P

Ponieważ wydajesz się być trochę obeznany z ekranem, zakładam, że możesz użyć innych informacji. Lubię następujące polecenia, takie jak:

-e xy

Co powoduje, że x jest znakiem polecenia, a y jest znakiem, który generuje dosłowny znak polecenia. Domyślne ustawienia to Ctrl-a i `a.

Tutaj masz coś więcej: ekran! To jest dla programistów


źródło
2

screen -dr aby odłączyć i wznowić poprzednią sesję ekranu.

sepp2k
źródło
2

Oto, co podniosłem na temat korzystania z ekranu (który również zacząłem robić):

  • screen -S <name>tworzy ekran o nazwie „<nazwa>”. Jest to bardzo przydatne, jeśli chcesz mieć kilka sesji ekranowych jednocześnie. Na przykład mam taki, którego używam normalnie, i taki, którego używam do moich trwałych procesów.
  • screen -ls wyświetla działające ekrany.
  • screen -r <name>wznawia odłączony ekran. Jeśli ekran jest już gdzieś przymocowany, użyj screen -dr <name>.

Ponadto, kiedy zaczniesz używać screena, za każdym razem, gdy planujesz wyjść, naciśnij ^a d(= ctrl-a, a następnie d ), aby odłączyć ekran, na którym aktualnie pracujesz. Można go później wznowić.

Ponadto mogę polecić zapoznanie się ^a ?z listą różnych poleceń, których można używać w obrębie ekranu.

Najważniejsze z nich (dla mnie) to:

  • ^a c aby utworzyć nowe okno w sesji ekranowej.
  • ^a ^a przełączanie między dwoma ostatnio używanymi oknami.
  • ^a " aby wyświetlić listę bieżących okien w sesji.
  • ^a Esc przewijać w buforze ekranu.
  • ^a k zabić bieżące okno.
  • ^a x aby zablokować sesję ekranową, na wypadek, gdybyś musiał opuścić komputer i nie chciał, aby ludzie z nim zadzierali.
Sebastian Paaske Tørholm
źródło
1

możesz także skonfigurować środowisko, aby logowało się i uruchamiało ekran od razu z nietoperza. Można to zrobić na wiele sposobów. Zdecydowałem się dodać to do mojego pliku .bashrc.

# screen management
if [ $SSH_TTY ] && [ ! $WINDOW ]; then
  SCREENLIST=`screen -ls | grep 'Attached'`
  if [ $? -eq "0" ]; then
    echo -e "Screen is already running and attached:\n ${SCREENLIST}"
  else
    screen -U -R
  fi
fi
Blady koń
źródło
0

Ty byś szukał

screen -x
Matthew Scharley
źródło
0

Krok 4 to „screen -r”

Jeśli zostałeś naprawdę mocno rozłączony, może być konieczne wykonanie polecenia screen -r -d, aby zmusić go do rozłączenia się ze starą sesją ssh, która według niego jest nadal otwarta.

Hugh Perkins
źródło
0
 For windows system

 Open putty 
 then login in server

Jeśli chcesz zobaczyć ekran w konsoli, musisz napisać polecenie

 Screen -ls

jeśli musisz uzyskać dostęp do ekranu, musisz użyć poniższego polecenia

 screen -x screen id
Ankit jain
źródło