screen 命令使用及示例
screen 是一個非常有用的命令,提供從單個 SSH 會話中使用多個 shell 窗口(會話)的能力。當會話被分離或網絡中斷時,screen 會話中啟動的進程仍將運行,你可以隨時重新連接到 screen 會話。如果你想運行一個持久的進程或者從多個位置連接到 shell 會話,這也很方便。
在本文中,我們將展示在 Linux 上安裝和使用 screen 的基本知識。
如何安裝 screen
screen 在一些流行的發行版上已經預安裝了。你可以使用下麵的命令檢查是否已經在你的服務器上安裝了。
screen -vScreen version 4.00.03 (FAU)
如果在 Linux 中還沒有 screen,你可以使用係統提供的包管理器很簡單地安裝它。
CentOS/RedHat/Fedora
yum -y install screen
Ubuntu/Debian
apt-get -y install screen
如何啟動一個 screen 會話
你可以在命令行中輸入 screen 來啟動它,接著會有一個看上去和命令行提示符一樣的 screen 會話啟動。
screen
使用描述性名稱啟動屏幕會話是一個很好的做法,這樣你可以輕鬆地記住會話中正在運行的進程。要使用會話名稱創建新會話,請運行以下命令:
screen -S name
將 “name” 替換為對你會話有意義的名字。
從 screen 會話中分離
要從當前的 screen 會話中分離,你可以按下 Ctrl-A 和 d。所有的 screen 會話仍將是活躍的,你之後可以隨時重新連接。
重新連接到 screen 會話
如果你從一個會話分離,或者由於某些原因你的連接被中斷了,你可以使用下麵的命令重新連接:
screen -r
如果你有多個 screen 會話,你可以用 ls 參數列出它們。
screen -lsThere are screens on:7880.session (Detached)7934.session2 (Detached)7907.session1 (Detached)3 Sockets in /var/run/screen/S-root.
在我們的例子中,我們有三個活躍的 screen 會話。因此,如果你想要還原 “session2” 會話,你可以執行:
screen -r 7934
或者使用 screen 名稱。
screen -r -S session2
中止 screen 會話
有幾種方法來中止 screen 會話。你可以按下 Ctrl+d,或者在命令行中使用 exit 命令。
要查看 screen 命令所有有用的功能,你可以查看 screen 的 man 手冊。
man screenNAMEscreen - screen manager with VT100/ANSI terminal emulationSYNOPSISscreen [ -options ] [ cmd [ args ] ]screen -r [[pid.]tty[.host]]screen -r sessionowner/[[pid.]tty[.host]]
原文發布時間為:2017-02-17
本文來自雲棲社區合作夥伴“Linux中國”
最後更新:2017-05-26 08:52:34