教你screen2exe使用方法「screen2exe保存出錯的原因」

平時常用到Xshell等SSH客戶端連接伺服器進行配置工作,當執行的命令耗時過長時,為防止連接中斷,需要依賴終端復用軟體,常用的有screen和tmux。它們都可以實現在單個終端中打開多個登錄會話,復用軟體一個重要的特點是用戶可以在自己打開的多個登錄會話間自由切換(即attach、detach)。

本文對最常使用的終端復用工具screen和tmux進行介紹並比較二者的優缺點。

Tmux

特點:

  • 方便定製,可以改變外觀和運行行為
  • 會話窗口類似瀏覽器的標籤
  • 可以在Mac、Linux、樹莓派等多種系統中運行
  • 可在單個終端窗口中創建多個窗格
  • 支持Emacs和Vim快捷鍵

使用:

正確安裝tmux後在終端窗口中輸入tmux後,回車,便可進入tmux創建的會話中,此時運行長耗時命令,即使你與伺服器間的網路中斷,也不會影響命令的執行。Screen和Tmux比較

tmux會話

  • [0] 0:yunwei-op@tomcat-36:~:中括弧中0表示當前會話的名字,因為創建會話的時候沒有指定名字,所以顯示為0,緊跟著的0代表窗口的序號,第一個窗口顯示為0
  • *:星號表明這個是當前窗口
  • tomcat-36:主機名
  • 11:06 04-Aug-21:當前時間

實際的工作場景:

創建名為「session-1」的會話,

$ tmux new -s session-1

Screen和Tmux比較

session-1會話

在當前會話中開啟第二個窗口,「Ctrl-b + c」Screen和Tmux比較

單個會話中開啟兩個窗口

當前窗口開啟第二個窗格(pane)並水平放置,「Ctrl-b + %」,對比文件差異時經常使用,Screen和Tmux比較

單個窗口中水平開啟兩個窗格

窗格間切換使用「Ctrl-b + {」和「Ctrl-b + }」。

窗口間切換使用「Ctrl-b + 窗口號」

退出當前會話(detach操作)使用「Ctrl-b + d」

顯示後台運行的會話:tmux ls

[yunwei-op@tomcat-36 ~]$tmux ls
session-1: 2 windows (created Wed Aug  4 14:56:31 2021) [130x31]

可以看到會話「session-1」有兩個窗口(第一個窗口有一個窗格,第二個窗口有兩個窗格)

進入指定會話:tmux attach -t session-name

Screen

屬於GNU項目,對比tmux最大的特點是支持session共享,其他功能和tmux類似。

使用:

和tmux一樣,命令行鍵入「screen」,回車即可進入screen 會話。

顯示幫助信息,「Ctrl-a + ?」Screen和Tmux比較

screen的幫助信息

創建命名會話,

$ screen -S session-name

脫離當前會話,「Ctrl-a + d」

顯示當前會話,

$ screen -ls

重新進入指定的會話,

$ screen -r screen-ID/screen-name

將當前窗口水平分割,「Ctrl-a + |」,Screen和Tmux比較

水平分割當前會話

可以看到screen和tmux的區別,這時候是兩個窗口,但還是一個會話,輸入「Ctrl-a + Tab」,切到新的窗口,然後輸入「Ctrl-a + c」,創建新的session。Screen和Tmux比較

兩個窗口各開一個session

切換會話使用「Ctrl-a + n」和「Ctrl-a + p」。關閉會話,「Ctrl-a + k」。

總結

tmux和screen是常用的會話復用工具,兩者功能類似。tmux基於BSD許可,screen基於GNU GPL許可,相比較而言,tmux使用更加友好,由tmux開啟的窗口下面有豐富的提示信息。screen比tmux最大的優勢是可以支持在不同用戶間進行會話共享。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/272644.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-17 14:01
下一篇 2024-12-17 14:01

相關推薦

發表回復

登錄後才能評論