Billy Tse
HomeRoadmapBlogContact
Playground
Buy me a bug

© 2026 Billy Tse

OnlyFansLinkedInGitHubEmail
Back to Blog
February 4, 2026•15 min read

Screen 命令完全指南:點樣喺 SSH 斷線後繼續跑緊你嘅程式

深入淺出講解 Linux Screen command,包括基本用法、實戰場景、Screen vs tmux 對比,以及生產環境最佳實踐

LinuxDevOps

有冇試過 SSH 連緊去 server 跑緊 AI 訓練,突然網絡斷咗,成個 process 冇咗?Screen 就係嚟解決呢個問題!呢篇文章會教你點樣用 Screen 令你嘅程式喺背景繼續跑,就算斷線都唔使驚。

TL;DR

核心重點:

  • 🎯 Screen 係乜:Terminal multiplexer,俾你喺 SSH 斷線後 process 繼續跑
  • 🚀 5 分鐘上手:3 個核心命令就夠用 (create、detach、attach)
  • 💡 實戰場景:訓練 AI model、跑長時間 script、遠程工作
  • ⚖️ Screen vs tmux:Screen 簡單易用,tmux 功能更強
  • 🛠️ 進階技巧:Split windows、.screenrc 配置、logging
  • 📊 生產環境:命名規範、監控、自動化

目錄

  • 點解需要 Screen?
  • 5 分鐘快速上手
  • 核心命令詳解
  • 實戰場景
  • Screen vs tmux 對比
  • 進階功能
  • 常見問題
  • 總結

點解需要 Screen?

問題場景

想像你喺本地 MacBook SSH 去 AWS server 訓練緊一個 13B 模型:

ssh user@aws-server python train_llama.py --epochs 100 # 預計要跑 3 日

突然 WiFi 斷咗!❌

你嘅 training process 會發生咩事?

→ **全部冇晒!**😱

點解會咁?

當你 SSH 去一個 server,你嘅 shell session 係依賴住呢個連接。一旦連接斷咗:

  • Shell 會收到 SIGHUP (hangup signal)
  • 所有由呢個 shell 啟動嘅 processes 都會被 kill
  • 你嘅 training、download、compilation... 全部停咗

我第一次遇到呢個問題嗰陣,我喺公司 server 度 compile 緊一個大型 C++ project,預計要 2 個鐘。啱啱去咗食 lunch,返嚟發現 WiFi 斷過,成個 compilation 要由頭嚟過。之後我就開始用 Screen。

Screen 嘅解決方法

Screen 係一個 terminal multiplexer,佢會創建一個獨立於你 SSH session 嘅虛擬終端。

用 Screen 跑同一個任務:

ssh user@aws-server screen -S training # 開個 screen session python train_llama.py # 喺 screen 入面跑 # 按 Ctrl+A D 離開 (detach) # WiFi 斷咗都冇問題!

就算你:

  • ❌ Close 埋個 laptop
  • ❌ 斷咗 WiFi
  • ❌ SSH connection timeout

Training 都會繼續跑!🎉

之後你可以:

ssh user@aws-server # 重新連接 screen -r training # 返返去個 session # 見到你嘅 training 仍然跑緊!

💡 Screen 嘅核心概念
Screen 創建咗一個虛擬終端 (virtual terminal),呢個終端係運行喺 server 上面,唔係你本地機。

  • 你嘅 SSH 只係「連接」去呢個虛擬終端

  • 當你 detach,虛擬終端繼續運行

  • 你可以隨時 re-attach 返去

就好似你去咗朋友屋企打機,走嘅時候可以 pause,下次返嚟繼續玩。個 game 一直都喺度,只係你暫時唔喺度而已。

5 分鐘快速上手

3 個核心命令

你只需要記住呢 3 個命令,就已經可以應付 90% 嘅使用場景:

1️⃣ 開新 session

screen -S my-session
  • -S 係 "Session name" 嘅意思
  • my-session 係你俾個 session 嘅名(可以自己改)

2️⃣ 離開 session (Detach)

Ctrl+A D
  • 按住 Ctrl 同時按 A,然後放開,再按 D
  • Session 會繼續跑,但你返咗去原本嘅 shell

3️⃣ 返返去 session (Attach)

screen -r my-session
  • -r 係 "reattach" 嘅意思

就係咁簡單!✅

第一個實戰例子

我哋嚟實際試下。假設你要喺 server 度下載一個大 file:

Step 1: SSH 去你嘅 server

ssh user@your-server.com

Step 2: 開個 Screen session

screen -S download

你會見到畫面閃一閃,然後返回正常嘅 shell。呢個就係 screen session。

Step 3: 開始下載

wget https://example.com/large-file.zip # 或者 curl -O https://example.com/large-file.zip

Step 4: Detach

按 Ctrl+A,然後按 D

你會見到:

[detached from 12345.download]

而家你返咗去原本嘅 shell,但 download 仍然喺背景跑緊!

Step 5: 檢查 session list

screen -ls

輸出:

There is a screen on: 12345.download (Detached) 1 Socket in /run/screen/S-user.

Step 6: 隨時 re-attach

screen -r download

你會返返去個 download session,見到進度!

就算你而家 logout,download 都會繼續:

exit # 離開 SSH # 過咗一陣,重新 SSH ssh user@your-server.com screen -r download # 見到 download 仍然跑緊

核心命令詳解

Session 管理

創建 Session

# 有名 session(推薦) screen -S session-name # 無名 session(唔建議) screen

點解要俾名? 當你有多個 sessions,冇名好難記邊個係邊個。

列出所有 Sessions

screen -ls

輸出例子:

There are screens on: 12345.training (Detached) 12346.download (Attached) 12347.monitoring (Detached) 3 Sockets in /run/screen/S-billy.
  • Detached:session 跑緊,但冇人 attach
  • Attached:有人正在使用呢個 session

Attach 去 Session

# Attach 去指定 session screen -r session-name # 如果只有一個 detached session screen -r # 強制 attach(即使有人用緊) screen -x session-name

Detach Session

喺 screen 入面:

Ctrl+A D

由外面 detach:

screen -d session-name

結束 Session

喺 session 入面:

exit # 或者 Ctrl+D # 或者 Ctrl+A K # Kill

由外面 kill:

screen -S session-name -X quit

Screen 快捷鍵

Screen 嘅所有快捷鍵都係 Ctrl+A 開頭,然後跟住另一個鍵。

快捷鍵功能說明
Ctrl+A DDetach離開 session,保持運行
Ctrl+A CCreate window喺同一個 session 開新 window
Ctrl+A NNext window切換去下一個 window
Ctrl+A PPrevious window切換去上一個 window
Ctrl+A 0-9Switch to window N直接跳去第 N 個 window
Ctrl+A "Window list顯示所有 windows,用方向鍵選擇
Ctrl+A ARename window改當前 window 嘅名
Ctrl+A KKill window關閉當前 window
Ctrl+A [Copy mode進入 scroll/copy 模式
Ctrl+A ]Paste貼上之前 copy 嘅內容
Ctrl+A ?Help顯示所有快捷鍵

⌨️ 記快捷鍵嘅技巧
我一開始都記唔晒咁多快捷鍵。其實你只需要記住最常用嘅幾個:

  • Ctrl+A D → Detach

  • Ctrl+A C → Create window

  • Ctrl+A N → Next window

  • Ctrl+A K → Kill window

其他嘅可以用 Ctrl+A ? 睇返。

Windows 管理

Screen 唔止可以 detach,仲可以喺同一個 session 入面開多個 windows(就好似 browser tabs 咁)。

點解要用 Windows?

想像你喺 server 度同時做緊幾樣嘢:

  • Window 0:跑緊 training
  • Window 1:monitor GPU usage (nvidia-smi)
  • Window 2:睇 logs (tail -f train.log)
  • Window 3:寫 code

全部都喺同一個 screen session,切換好方便!

實戰例子

# 開個 screen session screen -S dev # Window 0:開始 training python train.py # 開新 window (Ctrl+A C) Ctrl+A C # Window 1:monitor GPU watch -n 1 nvidia-smi # 再開新 window (Ctrl+A C) Ctrl+A C # Window 2:睇 logs tail -f train.log # 切換返 Window 0 Ctrl+A 0 # 或者用 Ctrl+A N (next) / Ctrl+A P (previous)

Window List

想睇有幾多個 windows?

Ctrl+A "

會見到:

Num Name 0 training 1 gpu-monitor 2 logs

用方向鍵選擇,按 Enter 跳去個 window。

實戰場景

場景 1:訓練 AI 模型

呢個係我最常用 Screen 嘅場景。AI 訓練通常要跑好耐(幾個鐘到幾日),你唔可能坐喺度等。

# SSH 去 GPU server ssh gpu-server # 開 screen session screen -S llama-training # 啟動訓練 python train_llama.py \ --model_size 7B \ --epochs 100 \ --batch_size 32 \ --output_dir ./checkpoints # Detach (Ctrl+A D) # 而家你可以 close laptop,訓練繼續跑 # 第二日返嚟 check 進度 ssh gpu-server screen -r llama-training # 見到訓練仍然跑緊!

進階:多 window 監控

screen -S training # Window 0: Training process python train.py 2>&1 | tee train.log # Window 1: GPU monitoring (Ctrl+A C) watch -n 1 nvidia-smi # Window 2: CPU/Memory monitoring (Ctrl+A C) htop # Window 3: Log analysis (Ctrl+A C) tail -f train.log | grep "loss:"

而家你可以隨時切換 windows check 唔同嘅 metrics!

場景 2:長時間 Data Processing

處理大量數據(例如 data preprocessing、ETL pipeline)都好啱用 Screen。

screen -S data-pipeline # 處理 1TB 嘅數據 python process_data.py \ --input /data/raw/ \ --output /data/processed/ \ --workers 32 # Detach Ctrl+A D # 過咗幾個鐘 check 返 screen -r data-pipeline

自動化 + Logging

screen -S pipeline # 加埋 logging 同 notification python process_data.py 2>&1 | tee pipeline.log && \ echo "Pipeline completed!" | mail -s "Data Pipeline Done" your@email.com Ctrl+A D

場景 3:遠程工作 / 多地點接力

我成日會喺公司開始寫 code,返到屋企想繼續。用 Screen 就唔使 git commit 未完成嘅 code。

喺公司:

ssh work-server screen -S dev vim my_project.py # 寫緊 code... # 要走啦,Detach Ctrl+A D exit

喺屋企:

ssh work-server screen -r dev # 見到啱啱寫到一半嘅 code,繼續寫!

場景 4:Server 維護 / 系統升級

做緊 system upgrade 或者 package installation,過程可能好長,用 Screen 可以避免中途斷線搞到 system 唔一致。

screen -S system-upgrade # 系統升級(可能要 30 分鐘) sudo apt update && sudo apt upgrade -y # 或者 compile 大型 software ./configure && make -j8 && sudo make install Ctrl+A D

⚠️ 生產環境注意事項
喺 production server 做維護嗰陣,我一定會用 Screen 或 tmux。點解?

有次我 SSH 去 production server 做緊 database migration,諗住好快搞掂。點知 migration script 行到一半,公司 VPN 斷咗。我個心一沉,因為 migration 可能已經改咗一半 schema,而家唔知係咩狀態。

之後我定咗 rule:任何可能超過 5 分鐘嘅操作,一定要喺 Screen/tmux 入面做。

Screen vs tmux 對比

Screen 同 tmux 都係 terminal multiplexers,功能好似,但有啲重要分別。

核心差異

特性Screentmux
發布年份1987(古老但穩定)2007(較新)
學習曲線⭐⭐ 簡單⭐⭐⭐ 稍難
預設快捷鍵Ctrl+ACtrl+B
Split panes⭐⭐ 基本(較難用)⭐⭐⭐⭐⭐ 強大
配置.screenrc(較簡單).tmux.conf(更靈活)
Plugin 生態❌ 幾乎冇✅ 豐富(tmux-resurrect, tmux-continuum)
Session sharing⭐⭐⭐ 支援⭐⭐⭐⭐ 更易用
Status bar⭐⭐ 基本⭐⭐⭐⭐⭐ 高度自定義
記憶體使用⭐⭐⭐⭐ 較少⭐⭐⭐ 稍多
預裝率✅ 大部分 Linux 預裝❌ 通常要自己裝

視覺化比較

Loading diagram...

快捷鍵對比

功能Screentmux
Prefix keyCtrl+ACtrl+B
DetachCtrl+A DCtrl+B D
Create windowCtrl+A CCtrl+B C
Next windowCtrl+A NCtrl+B N
Split horizontalCtrl+A SCtrl+B "
Split vertical`Ctrl+A`(要配置)
Switch paneCtrl+A TabCtrl+B 方向鍵

我嘅選擇建議

揀 Screen 如果:

✅ 你係新手,想快速上手

✅ Server 已經預裝 Screen

✅ 你只需要基本 detach/attach 功能

✅ 你唔需要複雜嘅 split windows

✅ 你想要最穩定、最少依賴

揀 tmux 如果:

✅ 你需要經常 split panes

✅ 你想要高度自定義 status bar

✅ 你想用 plugins(例如自動保存 sessions)

✅ 你做緊 pair programming

✅ 你願意花時間學習同配置

我自己嘅用法

我兩個都用:

  • Server 上用 Screen:因為大部分 server 預裝,我只係想 detach long-running tasks
  • 本地開發用 tmux:因為我鍾意 split panes 嘅方式,而且有好多 plugins 幫到手

💡 唔使二揀一!
Screen 同 tmux 唔係競爭關係。好多人(包括我)都係兩個都用,視乎情況。

如果你而家用緊 Screen 用得好好,其實冇必要特登轉 tmux。但如果你發現 Screen 嘅功能唔夠,咁就可以試下 tmux。

進階功能

Split Windows(分割畫面)

Screen 都支援 split panes,雖然冇 tmux 咁好用,但都夠用。

Horizontal Split(上下分割)

Ctrl+A S

你會見到畫面分咗兩半(上下)。但係新嘅 pane 係空白!你需要:

Ctrl+A Tab # 跳去下面個 pane Ctrl+A C # 喺新 pane 開個 window

Vertical Split(左右分割)

Screen 預設冇垂直分割。你需要喺 .screenrc 加:

# ~/.screenrc bind | split -v

之後就可以用 Ctrl+A | 做垂直分割。

Switch Between Panes

Ctrl+A Tab

Remove Split

Ctrl+A X # 移除當前 pane Ctrl+A Q # 移除所有 panes 除咗當前

實戰例子:上下分割睇 logs

screen -S monitor # 頂部:跑 training python train.py # Split (Ctrl+A S) Ctrl+A S # 跳去下面 (Ctrl+A Tab) Ctrl+A Tab # 開 window (Ctrl+A C) Ctrl+A C # 下面:睇 logs tail -f train.log # 而家可以同時睇到 training output 同 logs!

💡 Split 嘅限制
老實講,Screen 嘅 split 功能比較雞肋。如果你經常需要 split panes,我會建議你用 tmux。

Screen 嘅 split 主要問題:

  • Detach 之後 split layout 會唔見咗

  • 操作唔夠直觀

  • 冇辦法調整 pane size

我自己用 Screen 都好少 split,通常只係開多幾個 windows。

Logging(記錄輸出)

Screen 可以將所有輸出自動記錄落 file,對 debugging 好有用。

手動開始 logging

Ctrl+A H

你會見到:

Creating logfile "screenlog.0".

之後所有嘅輸出都會寫入 screenlog.0。

停止 logging

Ctrl+A H # 再按一次

自動 logging(喺 .screenrc)

# ~/.screenrc deflog on logfile /tmp/screenlog_%t.log
  • %t 會被替換成 window number
  • 每個 window 有獨立嘅 log file

.screenrc 配置

你可以喺 ~/.screenrc 自定義 Screen 嘅行為。

我嘅推薦配置

# ~/.screenrc # 關閉啟動訊息 startup_message off # 增加 scrollback buffer(預設只有 100 行) defscrollback 10000 # Status line 顯示喺底部 hardstatus alwayslastline hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m-%d %{W}%c %{g}]' # 自動 logging deflog on logfile /tmp/screenlog_%t.log # Vertical split bind | split -v # 方便 resize bind = resize = bind + resize +1 bind - resize -1 # 快速切換 window(用 F11/F12) bindkey -k F1 prev bindkey -k F2 next # 256 色支援 term screen-256color # 自動 detach on hangup autodetach on # UTF-8 支援 defutf8 on

配置解釋

Status line:底部會顯示:

[ hostname ][ 0 bash 1 vim* 2 htop ][ 02-04 14:32 ]
  • 左邊:hostname
  • 中間:所有 windows(當前 window 有 *)
  • 右邊:日期時間

Scrollback buffer:預設只有 100 行,改成 10000 行可以 scroll 返好遠。

Vertical split:Ctrl+A | 做垂直分割。

Copy Mode(複製文字)

喺 terminal 入面複製文字有時好麻煩,Screen 提供咗 copy mode。

進入 Copy Mode

Ctrl+A [

操作

  • 移動 cursor:方向鍵 或 h/j/k/l(vim style)
  • 開始選擇:Space
  • 結束選擇:Space(會自動 copy)
  • 貼上:Ctrl+A ]
  • 離開 copy mode:Esc

搜尋

喺 copy mode 入面可以搜尋:

/search-term # 向下搜尋 ?search-term # 向上搜尋 n # 下一個 match N # 上一個 match

Multi-User Sessions(共享 session)

Screen 可以俾多個人同時 attach 去同一個 session,適合 pair programming 或者 debugging。

啟用 multi-user mode

User A(session owner):

screen -S shared # 啟用 multi-user Ctrl+A :multiuser on # 俾 user B 權限(假設 username 係 bob) Ctrl+A :acladd bob

User B:

# Attach 去 user A 嘅 session screen -x userA/shared

而家兩個人見到同一個畫面,任何一個人打字,另一個都會即刻見到!

實戰應用

我試過用呢個功能 remote debug production issue:

  • 我喺香港,同事喺倫敦
  • 我哋 attach 去同一個 screen session
  • 一齊睇 logs、一齊試 commands
  • 好似兩個人共用一個 terminal 咁

比起 screen sharing 軟件快好多!

常見問題 (FAQ)

Q1: Screen 同 nohup 有咩分別?

A: 兩個都可以令 process 喺背景跑,但用法好唔同:

nohup:

nohup python train.py &
  • ✅ 簡單:一個 command 搞掂
  • ❌ 冇交互:你唔可以返去睇 output 或者控制佢
  • ❌ 要睇 output 只能睇 nohup.out file

Screen:

screen -S training python train.py Ctrl+A D
  • ✅ 可以返去交互:隨時 attach 返去睇 output
  • ✅ 可以 send commands、stop process 等等
  • ❌ 稍為複雜少少

我嘅建議:

  • 如果你只係想 "fire and forget",用 nohup
  • 如果你想隨時返去 check 或者控制,用 screen

Q2: 可唔可以同時 attach 多次?

A: 可以!有兩種模式:

Read-only attach(screen -x):

# Terminal 1 screen -S demo # Terminal 2(同時) screen -x demo

兩個 terminals 會 mirror 同一個 session。一個打字,另一個即刻見到。

用途:

  • Pair programming
  • 教學 / demo
  • Remote debugging

Q3: Screen 會唔會用好多資源?

A: 唔會!Screen 非常輕量:

  • 每個 session:~1-2 MB RAM
  • CPU usage:幾乎零(除非你跑嘅 program 本身用好多)

我試過同時開 10+ screen sessions 都冇問題。

Q4: Screen session 會唔會因為 server reboot 而消失?

A: **會!**Screen sessions 係 process,server reboot 會 kill 晒所有 processes。

Screen 唔係用嚟:

  • ❌ 抵抗 server reboot
  • ❌ Persist across reboots

Screen 係用嚟:

  • ✅ 抵抗 SSH 斷線
  • ✅ 抵抗 network 問題
  • ✅ 俾你 close laptop

如果你想 process 喺 reboot 後自動重啟,你需要用:

  • systemd service
  • cron @reboot
  • supervisor / pm2

Q5: 點樣知道有幾多個 screen sessions 跑緊?

A:

screen -ls

如果冇任何 sessions:

No Sockets found in /run/screen/S-user.

如果有 sessions:

There are screens on: 12345.training (Detached) 12346.download (Attached) 2 Sockets in /run/screen/S-user.

Q6: 可唔可以 rename 一個 session?

A: 可以!有兩種方法:

方法 1:Detach 再用新名 attach

# 假設你有個 session 叫 12345.old-name screen -r old-name Ctrl+A D # 用新名 attach screen -r old-name -S new-name

方法 2:喺 session 入面 rename

# 喺 session 入面 Ctrl+A :sessionname new-name

Q7: Screen 有冇 security 問題?

A: Screen sessions 係 user-specific。即係話:

  • User A 嘅 sessions,User B 睇唔到(除非 User A explicitly share)
  • 要 attach 去其他人嘅 session 需要 permission

但係要注意:

  • ⚠️ Root sessions 好危險:如果你開個 screen session as root,任何有 root access 嘅人都可以 attach
  • ⚠️ 唔好 run sensitive commands:Screen logs 可能會 capture passwords

Q8: 點樣自動啟動 screen sessions?

A: 你可以喺 ~/.bashrc 或者 ~/.bash_profile 加:

# ~/.bashrc # 如果唔係喺 screen 入面,而且係 SSH 連接 if [[ -z "$STY" ]] && [[ -n "$SSH_CONNECTION" ]]; then # 試 attach 去 default session,冇就 create screen -DR default fi

呢個會:

  • 每次 SSH 連接都自動 attach 去 default session
  • 如果 default 唔存在,就 create
  • 如果已經 attached,就 detach 再 attach(force)

注意:呢個可能會令某啲操作(例如 scp)有問題,小心使用。

生產環境最佳實踐

命名規範

用有意義嘅名,唔好用 screen 或者 test:

❌ 唔好:

screen screen -S test screen -S s

✅ 好:

screen -S llama-training-v2 screen -S api-server-prod screen -S data-pipeline-2024-02-04

我自己嘅命名習慣:

screen -S <project>-<task>-<version/date> # 例子 screen -S smartquest-training-v1.2 screen -S analytics-etl-2024-02-04

加 Logging

一定要加 logging,特別係 production tasks:

screen -S training # 方法 1:用 tee(推薦) python train.py 2>&1 | tee train-$(date +%Y%m%d-%H%M%S).log # 方法 2:用 screen logging Ctrl+A H python train.py

點解要 logging?

  • 🔍 方便 debug
  • 📊 可以事後分析
  • 🚨 出錯嗰陣可以追返 root cause

監控 Screen Sessions

寫個 script 定期 check screen sessions 嘅狀態:

#!/bin/bash # check_screens.sh SESSIONS=$(screen -ls | grep -c "Detached") if [ $SESSIONS -eq 0 ]; then echo "WARNING: No detached screen sessions found!" | \ mail -s "Screen Monitor Alert" admin@example.com fi

加入 crontab:

crontab -e # 每個鐘 check 一次 0 * * * * /path/to/check_screens.sh

文檔化你嘅 Sessions

喺 team 環境,要 document 有咩 sessions 跑緊:

# /home/shared/screen_sessions.md ## Production Screen Sessions - `api-server-prod`: Main API server (started 2024-02-01) - Owner: billy@example.com - Command: `gunicorn app:app --workers 4` - Logs: `/var/log/api/server.log` - `data-pipeline`: Daily ETL pipeline (started 2024-02-03) - Owner: alice@example.com - Command: `python etl.py --daily` - Logs: `/var/log/etl/daily.log`

定期 Cleanup

Screen sessions 會一直存在,直到你手動 kill。定期 cleanup 避免 orphan sessions:

# 列出所有 dead sessions screen -ls | grep Dead # 清理 dead sessions screen -wipe

寫個 cleanup script:

#!/bin/bash # cleanup_old_screens.sh # Kill all screen sessions older than 7 days for session in $(screen -ls | grep Detached | awk '{print $1}'); do # Get session creation time # (呢度需要 parse screen socket files 嘅 mtime) # 如果超過 7 日,就 kill screen -S $session -X quit done

總結

核心重點回顧

Screen 解決咗咩問題?

  • ✅ SSH 斷線後 processes 繼續運行
  • ✅ 可以隨時 detach/attach
  • ✅ 多個 windows 管理
  • ✅ Session 持久化(直到 server reboot)

3 個必學命令:

screen -S name # Create Ctrl+A D # Detach screen -r name # Attach

常用場景:

  • 🤖 訓練 AI 模型
  • 📦 處理大量數據
  • 🔧 系統維護
  • 💻 遠程開發

Screen vs tmux:

  • Screen:簡單、預裝、穩定
  • tmux:強大、靈活、現代

最佳實踐:

  • 📝 用有意義嘅 session names
  • 📊 加 logging
  • 📚 Document 你嘅 sessions
  • 🧹 定期 cleanup

下一步學習

如果你想深入了解 terminal multiplexers:

  1. 試下 tmux:如果 Screen 唔夠用,學下 tmux
  2. 學 vim:Screen + vim 係絕配
  3. 研究 .screenrc:客製化你嘅 Screen 體驗
  4. 探索 session management:例如 tmuxinator、byobu

相關資源

官方文檔:

  • 📘 GNU Screen Manual
  • 📖 Screen User's Manual

教學資源:

  • 🎥 Screen Tutorial - DigitalOcean
  • 📝 Screen Cheat Sheet

替代方案:

  • 🔧 tmux - 現代化嘅 terminal multiplexer
  • 🎨 byobu - Screen/tmux 嘅友好 wrapper

相關工具:

  • 🖥️ mosh - Mobile shell,對付網絡唔穩定
  • 📡 eternal terminal - 自動 reconnect 嘅 SSH

希望呢篇文章幫到你掌握 Screen!如果你有任何問題或者想分享你嘅使用經驗,歡迎留言討論。記住:任何可能超過 5 分鐘嘅 SSH 操作,都應該喺 Screen 入面做! 🚀

Back to all articles
目錄