神器Screen
試想這樣一個(gè)場(chǎng)景:某天你打開(kāi)MobaXterm,然后進(jìn)行深度學(xué)習(xí)訓(xùn)練,當(dāng)訓(xùn)練進(jìn)度到99%時(shí),下一秒就能看到結(jié)果,突然啪的一聲斷電,你的進(jìn)程因?yàn)閿嚯姀?qiáng)制結(jié)束。或者周六想出去放松一下,但是實(shí)驗(yàn)還得繼續(xù)跑,只能電腦打開(kāi)進(jìn)程在那掛著,但是晚上Windows突然給你來(lái)個(gè)系統(tǒng)更新,系統(tǒng)又強(qiáng)制重啟,over,血壓上來(lái)了。那么此時(shí)就迎來(lái)了我們的神器Screen。
什么是Screen?
簡(jiǎn)單來(lái)說(shuō),使用Screen可以實(shí)現(xiàn)本地終端和遠(yuǎn)程終端的分離,在本地終端退出的情況下不影響遠(yuǎn)程終端的使用,也就是你在本地訪問(wèn)服務(wù)器跑程序之后本地主機(jī)關(guān)機(jī)也就沒(méi)有影響了,可以實(shí)現(xiàn)隨時(shí)切換,并且可以同時(shí)連接多個(gè)遠(yuǎn)程會(huì)話。
Screen是一個(gè)全屏窗口管理器,它可以在多個(gè)進(jìn)程之間多路復(fù)用一個(gè)物理終端。Screen中有會(huì)話的概念,用戶可以在一個(gè)會(huì)話中創(chuàng)建多個(gè)screen窗口,在每一個(gè)screen窗口中就像操作一個(gè)真實(shí)的telent/SSH連接窗口那樣。 通俗的講,screen命令用于新建一個(gè)或多個(gè)“命令行窗口”,在新建的這些“窗口”中,可以執(zhí)行命令,并且這些“窗口”都是獨(dú)立并行的。
Screen常用命令
- 創(chuàng)建會(huì)話
最簡(jiǎn)單的方法就是直接輸入screen
screen但這種方法的劣勢(shì)也很明顯,當(dāng)你的會(huì)話多了會(huì)無(wú)法分辨哪個(gè)進(jìn)程id在干什么,切換麻煩,如下:
(base) user@gpu-SA5212M5:~$ screen -ls There are screens on:36727.pts-8.gpu-SA5212M5 (2021年11月23日 10時(shí)26分53秒) (Detached)36701.pts-8.gpu-SA5212M5 (2021年11月23日 10時(shí)26分24秒) (Detached) 2 Sockets in /var/run/screen/S-user.推薦使用方法:
screen -S $model_nameeg:screen -S resnetscreen -S classification- 顯示當(dāng)前所有會(huì)話
如上所示,我們可以通過(guò)后面的名字得到具體的進(jìn)程。此時(shí)就可以通過(guò)進(jìn)程號(hào)和進(jìn)程名字進(jìn)行切換。
- 會(huì)話切換
如果想切換到resnet這個(gè)進(jìn)程可以通過(guò):
screen -r resnetscreen -r 36752上面任意一個(gè)都可。
- 離開(kāi)當(dāng)前會(huì)話
如果你想離開(kāi)當(dāng)前會(huì)話(可能是關(guān)機(jī),切換進(jìn)程,回去玩耍等),也就是程序掛后臺(tái)。
ctrl + a + d此時(shí)可以在主會(huì)話上繼續(xù)創(chuàng)建其他會(huì)話或者執(zhí)行其他命令,對(duì)我們創(chuàng)建的會(huì)話沒(méi)有任何影響。
- 退出會(huì)話
當(dāng)程序完成不需要此會(huì)話后,可以直接輸入exit來(lái)結(jié)束當(dāng)前會(huì)話。
ok,以上就是常用的screen命令,用好之后必定事半功倍。
總結(jié)
- 上一篇: EDiary2.53 电子记事本
- 下一篇: 教师资格证考试大纲