Linux下screen命令使用及示例
screen 是一個(gè)非常有用的命令,提供從單個(gè) SSH 會(huì)話中使用多個(gè) shell 窗口(會(huì)話)的能力。當(dāng)會(huì)話被分離或網(wǎng)絡(luò)中斷時(shí),screen 會(huì)話中啟動(dòng)的進(jìn)程仍將運(yùn)行,你可以隨時(shí)重新連接到 screen 會(huì)話。如果你想運(yùn)行一個(gè)持久的進(jìn)程或者從多個(gè)位置連接到 shell 會(huì)話,這也很方便。
在本文中,我們將展示在 Linux 上安裝和使用 screen 的基本知識(shí)。
如何安裝 screen
screen 在一些流行的發(fā)行版上已經(jīng)預(yù)安裝了。你可以使用下面的命令檢查是否已經(jīng)在你的服務(wù)器上安裝了。
- screen -v
- Screen version 4.00.03 (FAU)
如果在 Linux 中還沒有 screen,你可以使用系統(tǒng)提供的包管理器很簡(jiǎn)單地安裝它。
CentOS/RedHat/Fedora
- yum -y install screen
Ubuntu/Debian
- apt-get -y install screen
如何啟動(dòng)一個(gè) screen 會(huì)話
你可以在命令行中輸入 screen 來啟動(dòng)它,接著會(huì)有一個(gè)看上去和命令行提示符一樣的 screen 會(huì)話啟動(dòng)。
- screen
使用描述性名稱啟動(dòng)屏幕會(huì)話是一個(gè)很好的做法,這樣你可以輕松地記住會(huì)話中正在運(yùn)行的進(jìn)程。要使用會(huì)話名稱創(chuàng)建新會(huì)話,請(qǐng)運(yùn)行以下命令:
- screen -S name
將 “name” 替換為對(duì)你會(huì)話有意義的名字。
從 screen 會(huì)話中分離
要從當(dāng)前的 screen 會(huì)話中分離,你可以按下 Ctrl-A 和 d。所有的 screen 會(huì)話仍將是活躍的,你之后可以隨時(shí)重新連接。
重新連接到 screen 會(huì)話
如果你從一個(gè)會(huì)話分離,或者由于某些原因你的連接被中斷了,你可以使用下面的命令重新連接:
- screen -r
如果你有多個(gè) screen 會(huì)話,你可以用 ls 參數(shù)列出它們。
- screen -ls
- There are screens on:
- 7880.session (Detached)
- 7934.session2 (Detached)
- 7907.session1 (Detached)
- 3 Sockets in /var/run/screen/S-root.
在我們的例子中,我們有三個(gè)活躍的 screen 會(huì)話。因此,如果你想要還原 “session2” 會(huì)話,你可以執(zhí)行:
- screen -r 7934
或者使用 screen 名稱。
- screen -r -S session2
中止 screen 會(huì)話
有幾種方法來中止 screen 會(huì)話。你可以按下 Ctrl+d,或者在命令行中使用 exit 命令。
要查看 screen 命令所有有用的功能,你可以查看 screen 的 man 手冊(cè)。
- man screen
- NAME
- screen - screen manager with VT100/ANSI terminal emulation
- SYNOPSIS
- screen [ -options ] [ cmd [ args ] ]
- screen -r [[pid.]tty[.host]]
- screen -r sessionowner/[[pid.]tty[.host]]
順便說一下,如果你喜歡這篇文章,請(qǐng)?jiān)谏缃痪W(wǎng)絡(luò)上與你的朋友分享,或者在評(píng)論區(qū)留下評(píng)論。謝謝。