【Linux】終端機小技巧 – default start screen treminal,無縫接軌任何電腦,繼續使用同一個 terminal 殘留下來的訊息

➣ Reading Time: 7 minutes

前言

linux screen 是一個非常方便我們管理終端機視窗的工具,
我們有時候可能在某一台電腦 terminal 操作到一半,
突然會有需要換一台電腦,但又想要接續操作同一個 terminal 的內容,
這時候 screen 可以幫助我們無縫切換這件事情。

(也就是說,在 A 電腦上面顯示的所有 terminal 內容,可以直接顯示在 B 電腦 terminal 上)

只有 terminal 當下分頁的全部內容,並沒有其他的視窗哦XD
要其它視窗,你想要找的應該是 anydesk, teamviewer 之類的XD

另外一個個人覺得很大的優點
當如果是使用筆電操作遠端 terminal 的時候,
如果當要移動,筆電合起來勢必「連線會中斷,導致任務中斷」
使用 screen 就可以「讓任務在背景持續進行,就算要移動也不怕中斷任務」,
而且可以「隨時再啟動同樣的畫面!!!」

詳細介紹可以參考我之前的文:
【Linux】透過 screen 讓 terminal 內的工作內容可以無縫接軌到任何電腦 (儲存當下 terminal 內容),並可以繼續操作

那麼今天這篇文要來討論什麼呢?

screen 很方便我們現在知道了,
但問題是「每次打開終端機的時候,我們都還要手動去輸入 screen 來啟動 screen」,
但絕大部分我們所要需求 screen 的情況,到了當下才啟動 screen 一切都要重來了!!!

但反過來說,如果反向操作的話,反而就沒有這個問題,
因為「以 screen 啟動的 terminal 對使用者來說跟原生的根本沒差!」

因此,我們要來研究「一開啟 terminal 就能夠啟動 screen 的方法

一開啟 terminal 就能夠啟動 screen 的方法

其實這說起來要實現也不難,我們只需要透過修改 zshrc 並新增 screen 這行指令,
照理來說應該就沒問題了吧!!!

不!!!有個巨大的麻煩!!!

巨大的麻煩

我們試著去想,照上面的修改會發生什麼事,
因為預設啟動 screen,而透過 screen 啟動的 terminal 會再啟動一次 screen,
而這個又再次透過 screen 啟動的 terminal 會再啟動一次 screen,
…懂了嗎,這就是無窮迴圈的感覺呢!

所幸,screen 預設有迴圈上限,超過 99 次就會被強制擋下來了。
作者是不是連這點都想到了XDDD

解決 screen 迴圈問題

mac

為了解決這個問題,我們需要先來研究一下 screen 造成環境參數的不同,

在沒有 screen 的 terminal 下

echo $TERM

我們得到

啟動 screen 後

ok,光是這樣的差異就夠我們設定了XD,還可以完全避免迴圈

結論:在 mac 的 ~/.zshrc 中,請加上這一行

[[ $TERM != "screen" ]] && exec screen -q

ubuntu

為了解決這個問題,我們也需要先來研究一下 screen 造成環境參數的不同,

在沒有 screen 的 terminal 下

echo $TERM

我們得到

啟動 screen 後

ok,光是這樣的差異就夠我們設定了XD,還可以完全避免迴圈

結論:在 ubuntu 的 ~/.zshrc 中,請加上這一行

[[ $TERM != "screen.xterm-256color" ]] && exec screen -q

Reference

⭐Linux 指令 相關文章整理⭐:
⭐終端機 (terminal) 常用 總整理⭐:
1.(terminal指令 常用總整理)【Linux】linux/ubuntu/mac 基礎終端機 (terminal) 指令 & 基礎知識總整理,初學者/新手 必須知道的基礎指令 & 基礎知識大全(持續更新)
2.(terminal快速鍵 常用總整理)【Linux】linux/ubuntu/mac 基礎終端機 (terminal) 快速鍵/小技巧,初學者/新手 必須知道的一些實用功能!(持續更新)
3.(vim指令 常用總整理)【Linux】linux/ubuntu/mac vim 的 新手/初學者 的基礎使用指令 與 個人常用功能總整理 (持續更新)
4.【MobaXterm】在 Windows 中使用 MobaXterm VPN 連線至遠端系統 (linux, ubuntu) 遠端 ssh 顯示畫面
⭐Linux 基礎指令篇⭐:
1.【Linux】(作業系統基礎知識) 簡單理解「相對路徑」與「絕對路徑」,程式設計 初學者/新手 必須知道的路徑知識總整理
2.【Linux】linux ubuntu 中利用 mkdir 建立資料夾 相關參數總整理 (必定建立資料夾、修改資料夾權限 777)
3.【Linux】linux ubuntu 使用 terminal (終端機) 關機 shutdown、重新開機 reboot 的方法
⭐Linux 網路相關指令篇⭐:
1.【Linux】利用 ifconfig 查詢 ip 並用 scp 傳送資料 – linux, ubuntu 基礎終端機指令學習 sample code (內含範例程式碼)
2.【Linux】使用 sshfs 連線 將遠方磁碟當作像是在自己電腦的硬碟 mount disk on other computer
3.【Linux】使用 curl 將網路上的檔案 透過終端機 terminal 的方式下載 download
⭐Linux 進階指令篇 (檔案處理相關)⭐:
1.【Linux】linux, ubuntu 壓縮檔案常用指令 tar gzip zip 7z 壓縮檔案切割、壓縮檔案加密 與 解壓縮套件安裝方法 (內附圖文說明)
2.【Linux】Linux 查詢資料夾內的檔案數目 ls -1 | wc -l
3.【Linux】linux ubuntu 中利用 tail -f 可以查看 log 並不斷更新
4.【Linux】在終端機 terminal 使用 ln -s 建立如 windows, mac, ubuntu 檔案系統上的捷徑 – 軟連結 (Symbolic Link)
5.【Linux】linux, ubuntu 使用 split 指令檔案切割、檔案合併
6.【Linux】Linux 運用 sed 進行檔案內容的取代 instead 用法
7.【Linux】mac/ubuntu 如何利用 terminal 打開 GUI 資料夾總整理
⭐Linux 進階指令篇 (搜尋相關)⭐:
1.【Linux】linux, ubuntu 使用 ps, grep, pgrep 找到程式碼的 相關資訊 與 pid (ps aux, ps -ef)
2.【Linux】linux ubuntu 使用 grep, awk, xargs 尋找需要的資料,快速濾出/篩選 結果欄位 所需要的資訊 (內附圖文說明) filter column
⭐Linux 特殊應用篇⭐:
1.【Linux】Linux 增加 swap 的虛擬記憶體空間
2.【Linux】在 Ubuntu (Linux 系統) 上透過 / etc/fstab 安裝新的硬碟、新增硬碟容量 (SSD, HDD) (內附圖文說明)
3.【Linux】linux / ubuntu 複製硬碟的方法 copy all disk
4.【Linux】(內附圖文說明) ubuntu 停止自動更新的方法 disable auto update
5.【Linux】linux/ubuntu 下執行 anaconda-navigator 的方法
⭐Bash 自動化程式撰寫⭐:
1.【Bash】echo,bash 的 hello world 基本教學,開始自動化程式的第一堂課 / 撰寫腳本,利用 echo 顯示變數
⭐【喜歡我的文章嗎? 歡迎幫我按讚~ 讓基金會請創作者喝一杯咖啡!
如果喜歡我的文章,請幫我在下方【按五下Like】 (Google, Facebook 免註冊),會由 「LikeCoin」 贊助作者鼓勵繼續創作,讀者們「只需幫忙按讚,完全不用出錢」哦!

likecoin-steps
預設圖片
Howard Weng
我是 Howard Weng,很多人叫我嗡嗡。這個網站放了我的各種筆記。希望這些筆記也能順便幫助到有需要的人們!如果文章有幫助到你的話,歡迎幫我點讚哦!
文章: 391

★留個言吧!內容有誤或想要補充也歡迎與我討論!