Jak skutecznie używać polecenia „screen”?
Czy to jest:
Wpisz „screen”
Wpisz polecenie
Utrac połączenie
Sprawdź ponownie utraconą sesję
Jak wykonać krok 4?
Jak skutecznie używać polecenia „screen”?
Czy to jest:
Wpisz „screen”
Wpisz polecenie
Utrac połączenie
Sprawdź ponownie utraconą sesję
Jak wykonać krok 4?
Odpowiedzi:
Z ekranem:
screen
command
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 sesjiProstszą metodą, która jest przydatna w przypadku poleceń, które opuszczają pliki dziennika lub po prostu generują odpowiednie wyniki i nie wymagają interakcji nohup
:
nohup command > logfile &
tail -f logfile
z nowej sesjiEkran 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
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.Szybkie wyszukiwanie w Google znalazło ten przewodnik ekranowy
http://www.rackaid.com/resources/linux-tutorials/general-tutorials/using-screen/
Więc od kroku b) możesz odłączyć ekran używając:
„Ctrl - A” „d”
a następnie po utracie połączenia i połączeniu ponownie znajdź ekran, używając:
# screen -ls
a następnie podłącz ponownie, używając:
# screen -r <screen_session_name>
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
Ty byś szukał
screen -x
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.
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
screen -RD
.