溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中screen命令的用法

發(fā)布時間:2021-08-02 16:26:19 來源:億速云 閱讀:157 作者:chen 欄目:系統(tǒng)運維

這篇文章主要介紹“Linux中screen命令的用法”,在日常操作中,相信很多人在Linux中screen命令的用法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Linux中screen命令的用法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

很多時候,我們都需要執(zhí)行一些需要很長時間的任務。如果這時候,你的網(wǎng)絡連接突然斷開了,那么你之前所做的所有工作可能都會丟失,所做的工作可能都要重做一遍,這會浪費我們許多的時間,非常影響我們的工作。那么有沒有辦法可以解決這個問題呢?

答案是肯定的,那就是使用 screen 命令。screen  命令允許用戶在一個窗口內(nèi)使用多個終端會話,可以斷開連接,也可以重新連接已斷開連接的會話。每個會話都可以恢復連接,這樣就算會話斷開了,用戶也不必擔心數(shù)據(jù)丟失,這正好解決了我們的問題。

因此,良許想與大家分享 Screen 這個實用工具的一些功能以及用法:

安裝 Screen

現(xiàn)在許多的 Linux 發(fā)行版通常都預裝了 Screen 。通過運行以下命令,可以查看系統(tǒng)是否安裝了 Screen :

$ screen --version Screen version 4.06.02 (GNU) 23-Oct-17

如果你的系統(tǒng)并未安裝 Screen ,則可以執(zhí)行以下命令來安裝:

$ sudo apt install screen

啟動 Screen 會話

想要啟動一個 Screen 會話,只需輸入以下命令:

$ screen

輸入 screen  命令后,你會看到一個布滿版權信息的界面,你只需按回車或者空格鍵就可以跳過這個界面。跳過之后,你就可以看到終端界面了。這個終端和原來的終端并沒有什么不同,你一樣可以瀏覽文件夾,打開文件,在原來的終端中能做到的事情,它也可以做到。

你也可以在啟動 Screen 會話時,使用 -S 參數(shù)給會話起名字。例如,我想啟動一個叫 alvin 的 Screen 會話:

$ screen -S alvin

當你啟動了不止一個 Screen 會話時,這可以用來區(qū)分其他 Screen 會話。

進入 Screen 終端后,按 Ctrl a+? 快捷鍵,可以查看 Screen 所附帶的所有命令:

Linux中screen命令的用法

markdown

分離與重新連接 Screen 會話

假如你要更新系統(tǒng),你輸入更新命令后,是需要等待很長時間才更新完畢的。這時,如果你沒用 screen  命令,一旦你的網(wǎng)絡連接斷開了,那么更新就會被打斷,你就必須要重新開始更新。

Screen 會話的分離功能可以解決這個問題。你可以進入 Screen 終端里執(zhí)行更新命令,然后輸入會話分離快捷鍵 Ctrl a+d  ,你會看到以下提示信息:

Linux中screen命令的用法

markdown

這就表示你已經(jīng)成功從 Screen 會話中分離出來并回到原來的 Shell 會話中了。這時,Screen  會話會繼續(xù)留在后臺執(zhí)行更新任務。而且無論是網(wǎng)絡斷開連接,還是關閉原來的 Shell 會話,它都不會受到影響。

當然,如果你來不及按會話分離快捷鍵網(wǎng)絡就斷開了,Screen 會話也不會關閉,它一樣會繼續(xù)留在后臺執(zhí)行更新任務。

如果你想重新連接到已分離的 Screen 會話,以查看更新進程,只需執(zhí)行以下命令:

$ screen -r

需要注意的是,該命令只適用于當前終端只啟動了一個 Screen 會話的情況。

嵌套 Screen 會話

嵌套 Screen 會話,顧名思義,就是 Screen 會話中的 Screen 會話,是實現(xiàn)用戶在一個窗口中使用多個終端的方法之一。

想要啟動一個嵌套 Screen 會話很簡單,你只需要在 Screen 終端再次輸入 screen 命令,或者按 Ctrl a+c 快捷鍵,這會在你原來的  Screen 會話中再啟動一個 Screen 會話,而原來的 Screen 會話則會在后臺保持活動。

例如,你運行了 top 命令來監(jiān)控系統(tǒng)的 CPU 的使用情況:

$ top

Linux中screen命令的用法

markdown

而你既不想關掉這個 top 進程,又想同時做其他的任務,那么你就可以使用 Ctrl a+c 快捷鍵來啟動一個新的 Screen 會話,這樣,你既可以保持  top 命令在后臺運行,又可以去執(zhí)行其他的任務。

而如果你想切換回執(zhí)行 top 命令的 Screen 會話,可以使用快捷鍵 Ctrl a+n (切換至下一個 Screen 會話)或者 Ctrl a+p  (切換至上一個 Screen 會話)進行切換。

分離并啟動新的 Screen 會話

從 Screen 會話中分離出來再啟動新的 Screen 會話,也可以實現(xiàn)用戶在一個窗口中使用多個終端。

例如,你啟動一個 Screen 會話,然后輸入 df -h 來查看硬盤的使用情況:

$ df -h

Linux中screen命令的用法

markdown

然后你可以按 Ctrl a+d 快捷鍵從 Screen 會話中分離出來,回到原來的終端。這時你就可以再次輸入 screen 命令啟動一個新的 Screen  會話來執(zhí)行其他的任務。

如果你想重新連接回運行 df -h 命令的 Screen 會話,則需要先從新的 Screen 會話中分離出來,然后嘗試輸入 screen -r  命令。這時,由于你并行啟動了多個 Screen 會話,然而 screen 命令并不知道你想要重新連接到哪個會話中,因此,你會看到以下提示信息:

Linux中screen命令的用法

markdown

從圖中可以看到,每個 Screen 會話都有自己的 ID( 4352 與 4294 )以及自己的名字( pts-0.lxlinux  )。這里可以看到兩個會話的名字都是 pts-0.lxlinux ,那是因為我啟動 Screen  會話的時候,沒有指定名字,因此它們都以默認的名字作為自己的名字。

想要重新連接到運行 df -h 命令的 Screen 會話,你只需在 screen -r 命令后面再加上會話的 ID 就可以了,像這樣:

$ screen -r 4352

當然,如果在啟動 Screen 會話時,你給會話指定了獨一無二的名字,那么你也可以通過會話的名字來指定重新連接到哪個會話,例如,重新連接到名字為  alvin 的會話:

$ screen -r alvin

如果你并不知道 Screen 會話的 ID 以及名字,你也可以通過以下命令來查看:

$ screen -ls

關閉 Screen 會話

要關閉 Screen 會話很簡單,就和關閉平常的會話一樣,你可以使用 Ctrl d 快捷鍵,也可以輸入 exit 命令關閉:

$ exit

Linux中screen命令的用法

markdown

善用 Screen

在工作中,我們總會遇到需要執(zhí)行較長時間才能完成的任務,如果在執(zhí)行這些任務的過程中,遇到網(wǎng)絡中斷,那將會導致數(shù)據(jù)丟失以及時間的浪費,這將嚴重影響我們的工作。Screen  允許會話斷開后進程在后臺繼續(xù)運行,且支持從斷點恢復進程,這很好地解決了這問題。

而且 screen 命令還使我們可以利用一個窗口來同時執(zhí)行多個任務,這對我們工作是非常有用的。因此,為了避免數(shù)據(jù)丟失以及節(jié)省時間,我們應該多用  screen 命令。

到此,關于“Linux中screen命令的用法”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI