在日常的Linux系統管理工作中,我們經常需要同時運行多個命令行窗口,監控多個應用的運行情況。然而,同一終端只支持單個 shell 環境,無法在同一終端中同時運行多個獨立的命令行窗口。在這種情況下,Screen 命令可以幫助我們管理多個終端窗口,並允許我們在其中的任意一個窗口中運行多個命令。
一、常用命令選項
1、創建新的 Screen 窗口
screen -S myscreen
2、由已存在的 Screen 會話創建一個新窗口
ctrl+a c
3、列出當前已經存在的 Screen 窗口
screen -ls
4、離開當前窗口,但不關閉
ctrl+a d
5、恢復離開的 Screen 窗口
screen -r
二、會話的創建和恢復
在Linux系統的終端中,如果執行了某些操作,比如運行某個程序或者啟動某個服務之後,就不能再使用當前的終端來執行其他任何操作。這時,想要再次回到原來的狀態,就只能關閉當前的終端,重新打開一個新的終端。
為了解決這個問題,Screen 命令提供了會話的創建和恢復功能。
首先,使用以下命令創建一個新的 Screen 會話:
screen -S mysession
這個命令會創建一個名為 「mysession」 的新會話,並將當前的 shell 環境放入這個會話窗口中。
在該會話窗口中執行其他命令時,可以在該窗口中使用其他 Screen 命令來創建新的窗口並切換到不同的窗口中執行其他命令。
在需要離開當前窗口時,使用快捷鍵 「ctrl+a d」 來掛起當前窗口並返回原來的終端。如果需要恢復之前創建的會話,只需要執行以下命令:
screen -r mysession
這個命令會恢複名為 「mysession」 的會話窗口,並進入該窗口中。
三、分離和重連會話窗口
在某些情況下,需要臨時離開當前的終端會話,但是又不想中斷正在執行的程序。這時可以將會話窗口分離,等需要恢復時再重新連接回來。
使用以下命令,可以將當前的會話窗口分離:
ctrl+a d
這樣會話窗口就會被分離出來,並在後台繼續執行。此時,可以在當前終端中執行其他的操作。
要恢復分離的會話窗口,只需要執行以下命令:
screen -r
如果只有一個分離的會話窗口,直接執行以上命令即可恢復,如果存在多個分離的會話窗口,需要在命令後面加上會話的 ID 或名稱,例如:
screen -r 12345
或者:
screen -r mysession
四、同時使用多個會話窗口
Screen 命令還支持同時使用多個會話窗口,可以通過以下命令創建一個新的會話窗口:
ctrl+a c
這個命令會在當前會話窗口中創建一個新的窗口,然後可以使用以下命令在不同的窗口之間切換:
ctrl+a n
切換到下一個窗口。
ctrl+a p
切換到上一個窗口。
還可以使用以下命令列表所有會話窗口,然後通過數字鍵選擇相應的窗口:
ctrl+a 「
要關閉當前的窗口,可以使用以下命令:
exit
五、使用 Screen 命令進行遠程訪問
Screen 命令支持通過 SSH 等遠程協議進行連接,並在遠程伺服器上創建會話窗口。
要在遠程伺服器上創建一個會話窗口,可以使用以下命令:
ssh remoteuser@remotehost.com screen -S mysession
這個命令會登錄到遠程伺服器,然後在會話窗口中創建一個名為 「mysession」 的新會話。
使用以下命令可以分離當前的會話窗口,並在後台繼續執行:
ctrl+a d
要在本地重新連接到遠程伺服器上的會話窗口,只需要在本地的終端中執行以下命令:
ssh remoteuser@remotehost.com screen -r mysession
這個命令會連接到遠程伺服器,並恢複名為 「mysession」 的會話窗口。
綜上所述,Screen 命令是 Linux 系統管理員必備的一個工具,它可以幫助我們管理多個終端窗口,並允許我們在其中的任意一個窗口中運行多個命令,輕鬆提高工作效率。
原創文章,作者:WIGU,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/145268.html