tmux
$

tmux 入門ガイド

ターミナルを自由自在に操る -
ゼロからtmuxを学ぶ

Installation

インストール

お使いのOSに合わせてtmuxをインストールしてください

🍎

macOS

brew install tmux

Homebrewが必要です

🐧

Ubuntu/Debian

sudo apt install tmux

パッケージマネージャーでインストール

🐧

CentOS/RHEL

sudo yum install tmux

または dnf install tmux

インストール確認: tmux -V (バージョンが表示されます)

Introduction

tmux とは?

1つのターミナル画面の中で複数の作業環境を管理するツール

🤔 「ターミナルマルチプレクサ」って何?

「複数のものを1つにまとめる」という意味です。tmuxを使うと、1つのターミナルウィンドウの中に複数の仮想端末を作れます。

💡 分かりやすい例え

tmuxは「デスクの上の複数のモニター」のようなものです:

  • 普通のターミナル = 1台のモニターだけ。1つのアプリしか見えない
  • tmux = 1台のモニター(ターミナル)の中に複数の画面を切り替えながら使える
  • しかも離席しても(SSH切断しても)作業状態が保存される

画面分割

1つのターミナルを複数のペインに分割。エディタとサーバーのログを同時に見られます。

セッション維持

SSH切断しても作業が続く。いつでも作業を再開できます。

ウィンドウ管理

ブラウザのタブのように、複数の作業環境を切り替え。

Core Concepts

3つの基本概念

tmuxを理解する上で欠かせない3つの階層構造

1

セッション (Session)

作業単位
work-session 📁

複数のウィンドウを含む大きな箱

含む
2

ウィンドウ (Window)

タブのようなもの
📝 editor
⚙️ server
📋 logs

ブラウザのタブのように切り替え可能

分割
3

ペイン (Pane)

分割領域
vim
const hello = () => { console.log('tmux'); };
terminal
$ npm start > server running _

ウィンドウ内を複数に分割

🎯 実際の使い方の例

プロジェクト管理

project-a
vim server git
project-b
editor docker

異なるプロジェクトはセッションで分離。切り替えは簡単

SSH接続の永続化

1 SSHで接続
2 tmux起動・作業
3 SSH切断
4 再接続
作業が完全に復元!

作業状態がサーバーに保存される。最も重要な機能の一つ

💡 まとめ

セッションが複数のウィンドウを持ち、
ウィンドウは複数のペインに分割できる

⌨️ プレフィックスキーとは?

tmuxの操作は「プレフィックスキー(デフォルトは Ctrl+b)を押してから、次のキーを押す」という2段階操作です。

1 Ctrl+b を押す(指を離す)
2 d を押す(セッションから離脱)
💡 重要: Ctrl+b は押して離してから、次のキーを押します。同時押しではありません!
1

セッション Session

tmuxの最上位の作業単位。1つのセッションに複数のウィンドウを持てます。

🔄 セッションの永続化(最大の特徴)

セッションを離脱(detach)しても、サーバー上でプロセスは動き続けます。SSH切断後も作業状態が完全に保存され、後から再接続できます。

tmux new -s work セッション作成(-s はセッション名指定)
Ctrl+b d 離脱(detach)
SSH切断しても...
tmux attach -t work 再接続(-t はターゲット指定)
作業状態が完全に復元!
# セッション作成
tmux new -s work
# セッション一覧
tmux ls
Ctrl+b + d セッションから離脱(detach)
tmux attach セッションに再接続
2

ウィンドウ Window

セッション内のタブのようなもの。ブラウザのタブと同じ感覚で使えます。

# ウィンドウ作成
Ctrl+b c
# ウィンドウ切り替え
Ctrl+b n / p
Ctrl+b + 0-9 番号でウィンドウ移動
Ctrl+b + w ウィンドウ一覧表示
3

ペイン Pane

ウィンドウ内の分割領域。これがtmuxの最大の魅力です。

# 左右に分割
Ctrl+b %
# 上下に分割
Ctrl+b "
Ctrl+b + ←→↑↓ ペイン間移動
Ctrl+b + z ペインを全画面表示/元に戻す
Interactive Demo

ペイン分割を体験

実際のキーボード操作を可視化して確認

下のキーボードで Ctrl+b を押してから、各キーを押してみてください

Ctrl
+ b
%
"
z
x
demo
0:bash*
$ _
[demo] 0:bash* "user@host" 12:00 10-Feb-26
Cheat Sheet

インタラクティブ チートシート

よく使うコマンドをカテゴリ別に表示。コピーしてすぐ使えます。

🎯 セッション操作

tmux new -s <name>
新しいセッションを作成して接続(-s は名前指定)
tmux ls
セッション一覧を表示
tmux attach -t <name>
既存セッションに接続(-t はターゲット指定)
Ctrl + bd
セッションから一時離脱(detach)
Ctrl + b$
セッション名を変更
Ctrl + bs
セッション一覧を表示して選択
tmux kill-session -t <name>
セッションを終了

🗔 ウィンドウ操作

Ctrl + bc
新しいウィンドウを作成
Ctrl + bn
次のウィンドウへ移動
Ctrl + bp
前のウィンドウへ移動
Ctrl + b0-9
番号でウィンドウへ移動
Ctrl + bw
ウィンドウ一覧を表示
Ctrl + b,
ウィンドウ名を変更
Ctrl + b&
現在のウィンドウを閉じる
Ctrl + bl
直前のウィンドウへ移動

ペイン操作

Ctrl + b%
左右に分割
Ctrl + b"
上下に分割
Ctrl + b←→↑↓
ペイン間を移動
Ctrl + bo
次のペインへ移動
Ctrl + b;
直前のペインへ移動
Ctrl + bz
ペインを全画面表示/元に戻す(ズーム)
Ctrl + bx
現在のペインを閉じる
Ctrl + bSpace
レイアウトを切り替え
Ctrl + b{ / }
ペインを入れ替え
Ctrl + bq
ペイン番号を表示(数字で移動)

📋 コピー・スクロール

Ctrl + b[
コピーモードに入る(スクロール可能)
Ctrl + b]
コピーしたテキストを貼り付け
Space
コピー開始位置を選択(emacsモード)
Enter
コピー終了位置を確定(emacsモード)
q
コピーモードを終了
/ PgUp PgDn
スクロール

⚙️ その他よく使う操作

Ctrl + b?
キーバインド一覧を表示
Ctrl + b:
コマンドプロンプトを開く
:source-file ~/.tmux.conf
設定ファイルを再読み込み
Practice

実践的な使い方

よくある作業シナリオとtmuxでの実現方法

01

Web開発ワークフロー

vim
npm
git
tmux new -s webapp セッション作成
Ctrl+b % ペインを左右に分割
Ctrl+b Ctrl+b " 下にペインを分割
各ペインで編集・ビルド・git操作
02

リモートサーバー監視

top
logs
df
network
SSHでサーバーに接続
tmux new -s monitor 監視セッション作成
Ctrl+b %Ctrl+b " 4分割レイアウト
Ctrl+b d 切断しても監視継続
03

セッション管理の基本

work
study
server
-
tmux ls セッション一覧確認
tmux kill-session -t old_session 不要なセッションを終了
tmux kill-server 全セッションを終了(注意!)
名前を付けて管理すると便利
Configuration

おすすめ設定 (.tmux.conf)

コピーしてすぐ使える設定例

プレフィックスキーの変更(Ctrl+aに)

# Ctrl+b のかわりに Ctrl+a を使う
set -g prefix C-a
unbind C-b
bind C-a send-prefix

-g = global(グローバル設定)
send-prefix = tmux内のtmux(ネスト)にプレフィックスを送るための設定
ネストを使わない場合は3行目は不要ですが、念のため残しておくと安全です。

設定の再読み込みを簡単に

# r で設定再読み込み
bind r source-file ~/.tmux.conf \; display "Config reloaded!"

ペイン分割のキーを変更

# | で左右分割、- で上下分割
bind | split-window -h
bind - split-window -v
unbind '"'
unbind %

覚え方: |(パイプ)は縦棒だから左右に分割、-(ハイフン)は横棒だから上下に分割

マウス操作を有効化

# マウスでペイン選択・リサイズ・コピー可能に
set -g mouse on

# マウスドラッグでコピーモードを終了しない
unbind -T copy-mode-vi MouseDragEnd1Pane

MouseDragEnd1Pane: デフォルトではマウスドラッグ終了時にコピーモードが終了してしまい、選択範囲が消えます。この設定で選択を保持できます。
注意: copy-mode-vi はviモード設定時のみ有効です。

Vim風のキーバインド

# コピーモードをvim風に
setw -g mode-keys vi

# ペイン移動をvim風に
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# コピーモードの選択をvim風に
bind -T copy-mode-vi v send -X begin-selection
bind -T copy-mode-vi y send -X copy-selection-and-cancel

ステータスバーのカスタマイズ

# ステータスバーを上部に
set -g status-position top

# ステータスバーの更新間隔
set -g status-interval 1

# ステータスバーの色
set -g status-style bg=black,fg=white

# アクティブなウィンドウのスタイル
setw -g window-status-current-style bg=blue,fg=white,bold

# ペインボーダーの色
set -g pane-border-style fg=colour240
set -g pane-active-border-style fg=colour39

番号を1から始める

# ウィンドウ番号を1から
set -g base-index 1
setw -g pane-base-index 1

# ウィンドウを閉じた時に番号を詰める
set -g renumber-windows on

理由: キーボードの配列上、0は1より遠い位置にあるため、1から始めた方が押しやすいです。

🚀 クイックスタート

1 ~/.tmux.conf を作成
2 上の設定をコピペ
3 Ctrl+b : source-file ~/.tmux.conf
コピーしました!