遠端跑程式碼終端斷開後怎麼恢復?

由於公眾號改版不再按照作者的釋出時間進行推送,為防止各位朋友錯過月來客棧推送的最新文章,大家可以手動將公眾號設定為“星標 ”以第一時間獲得推送內容,感謝各位~

1 引言

今天要和大家介紹的是一個在Linux系統中人稱掛機神器的screen工具。為什麼我們會需要這個工具呢?請匹配自己在透過遠端連線伺服器的時候是否出現過以下煩惱:

正在執行某個程式,由於網路不好突然中斷了,再次連線後發現程式程序還在後臺,但就是恢復不到程式的執行介面;

執行某個程式時需要開啟多個終端執行後臺service服務,而你又不想每次連線後都做這個繁瑣的工作,希望能這些服務能夠在伺服器上一直執行著,哪怕是重新連線後也能恢復到對應的執行視窗;

如果你也遇到過上述類似情況,那請你趕快試試screen。

2 安裝

1。1 線上安裝

如果你的電腦能夠連線外網,那麼直接執行如下命令即可:

Ubuntu

Centos

1。2 離線安裝

如果你的電腦並不能夠連線外網,那我們就以離線的方式進行安裝:

第一步:下載安裝包

開啟連結 https://ftp。gnu。org/gnu/screen/ 下載一個最近幾年版本的都行,此處以為例。

遠端跑程式碼終端斷開後怎麼恢復?

第二步:解壓安裝包

在安裝包所在的目錄執行如下命令

進入到解壓後的目錄

第四步:配置相應環境

如果執行完命令沒有出現錯誤提示,那麼直接進入到步驟六,如果有錯誤則需要安裝這個包。

第五步:安裝(可選)

同樣開啟連結 https://ftp。gnu。org/gnu/ncurses,下載ncurses安裝包,然後解壓並安裝

第六步:安裝

第四步沒有錯誤提示

執行如下命令即可完成安裝

第四步出現過錯誤提示

再次回到目錄中, 然後執行如下命令

3 使用方法

如果安裝成功後,輸入即可看到類似如下提示資訊:

3。1 新建虛擬視窗

透過命令即可以建立一個名為的虛擬視窗,建立完成後也會預設進入到這個視窗。在這個視窗中可以做任何你想做的事情。假如你此時執行一個程式後,就可以選擇以快捷鍵暫時退出此視窗。並且還可以再建新的視窗來做其它的事情。

3。2 檢視當前視窗

我們可以透過命令來列出當前一共有哪些虛擬視窗。

例如這裡可以看到,筆者的主機上有兩個視窗,其狀態均為Detahed,也就是退出的狀態。

3。3 恢復視窗

如果有狀態為Detached的視窗,則我們可以透過命令來進行恢復(如果是兩個同名的視窗,則需要根據前面的id來進行恢復)。執行完命令後,我們就能夠恢復到你上次退出視窗時的狀態。此時我們再執行就會看到如下資訊:

可以看到,這個視窗的狀態已經變成了Attached,即當前我們正在這個視窗中。

3。4 中斷後恢復

如果我們正在使用某個視窗時,突然終端了,此時我們重新連線並輸入命令後能看到如下提示資訊:

可以發現,視窗的窗體仍舊是Attached。但是此時如果再用進行恢復則會出現如下提示:

此時,我們就需要先Detached視窗,然後再對其進行恢復:

這樣,我們就能夠恢復中斷後的虛擬視窗。

3。5 命令總結

說了這麼多,其實總結起來也就是5個命令的使用,多用幾次也就記住了。

4 總結

在這篇文章中,筆者首先簡單的介紹瞭如何安裝screen工具;然後再介紹瞭如何使用screen,以及一些常見場景的對應處理辦法。