【ティーマックス】

tmux とは?

💡 ターミナルの窓を自在に操る魔法のリモコン
📌 このページのポイント
tmux ― ターミナル分割・セッション管理 Session: dev Window 1 $ vim main.py コード編集 $ npm run dev サーバーログ Window 2 $ git status modified: main.py Git操作 [dev] 0:editor* 1:git detach: Ctrl+b d
tmuxのセッション・ウィンドウ・ペイン構造
ひよこ ひよこ

tmuxって何ができるの?ターミナルを開けばいいんじゃないの?

ペンギン先生 ペンギン先生

普通のターミナルだと1つの画面で1つの作業しかできないけど、tmuxを使えば1つのターミナルを分割して複数の作業を同時に見られるんだよ

ひよこ ひよこ

画面分割ってそんなに便利なの?

ペンギン先生 ペンギン先生

例えば左側でコードを編集して、右側でサーバーのログを見て、下にテストの実行結果を表示する、なんてことが1つのターミナルでできるんだ

ひよこ ひよこ

SSH接続が切れても大丈夫って聞いたけど…?

ペンギン先生 ペンギン先生

それがtmuxの最大の強みだね。セッションをデタッチしておけば、SSH接続が切れてもサーバー側でプロセスが動き続ける。再接続してアタッチすれば元の画面がそのまま戻ってくるよ

ひよこ ひよこ

ペアプログラミングにも使えるって本当?

ペンギン先生 ペンギン先生

同じtmuxセッションに複数人がアタッチすれば、全員が同じ画面を共有できるんだ。リモートでペアプロする時にも便利だよ

ひよこ ひよこ

設定はいじれるの?

ペンギン先生 ペンギン先生

tmux.confでキーバインドもステータスバーの表示も自由自在だよ。プレフィックスキーをCtrl+aに変えたり、ペインの移動をvim風にしたり、自分好みのターミナル環境を作り込めるんだ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「tmux」って出てきたら「ターミナルの画面を分割・管理できるツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「terminal multiplexer」 = 端末多重化装置
💬 terminalは端末、multiplexerは複数の信号をまとめる装置のこと。ターミナルを多重化するからtmuxだよ
← 用語集にもどる