1 背景
在運(yùn)行docker或者使用終端時(shí),需要在啟動(dòng)進(jìn)程或容器后通過手動(dòng)輸入密碼的方式進(jìn)行交互。如果通過docker run -d xxx 或者nohup xxx 的方式啟動(dòng)又無法進(jìn)行密碼輸入導(dǎo)致內(nèi)部程序無法正常運(yùn)行。
系統(tǒng):macOS Big Sur 11.0.1
2 使用screen工具
2.1 創(chuàng)建一個(gè)新session
會(huì)話名為sessionName:
$ screen -S sessionName
創(chuàng)建后會(huì)出現(xiàn)第一個(gè)窗口:在這里插入圖片描述
實(shí)際為打開一個(gè)系統(tǒng)默認(rèn)的bash終端。此時(shí)已經(jīng)進(jìn)入了新的會(huì)話當(dāng)中,在這里可以執(zhí)行你的進(jìn)程或者運(yùn)行docker容器。這里我以一個(gè)阻塞窗口的vim編譯為例:
$ vim sessionName.txt
效果圖如下:
在這里插入圖片描述
之后終端會(huì)阻塞在vim編輯器中。
2.2 切出該session
鍵盤輸入:ctrl+a+d,切出session回到初始終端中:

在這里插入圖片描述
注:有detached提醒。
2.3 如何回到session?
過了很久,你想回來看看session里那個(gè)進(jìn)程進(jìn)行的如何。
$ screen -ls
效果圖如下:

在這里插入圖片描述
找到session的id:78416,并執(zhí)行:
$ screen -r 78416
效果圖如下:
在這里插入圖片描述
回到了原阻塞的session中。
ps:
本人熱愛圖靈,熱愛中本聰,熱愛V神,熱愛一切被梨花照過的姑娘。