tmuxの使い方 – 画面分割・セッション管理・おすすめ設定まとめ

コマンドリファレンス

tmux は1つの端末で複数の領域(ペイン)やタブ(ウィンドウ)を分割して扱える「ターミナルマルチプレクサ」と呼ばれるツールです。セッションをデタッチしておけば、SSH接続が切れても後から再接続(アタッチ)して作業を継続できます。
長時間の処理、リモートでの作業、複数ログの同時監視などで非常に役立ちます。

tmuxとは・メリット

tmuxを使う最大のメリットは、「ターミナル上の作業状態(セッション)を保持できる」点と「画面を自由に分割できる」点です。

  • セッションの永続化: 作業中にネットワークが切断されても、tmux上のプログラムは動き続けます。再度サーバーに接続して tmux a を実行すれば、元の画面にすぐ戻れます。
  • 画面分割(ペイン・ウィンドウ): 1つのターミナル画面を上下左右に分割したり、複数のタブ(ウィンドウ)を作って切り替えたりできるため、作業効率が格段に上がります。

基本的な使い方

1. 起動と終了

ターミナルで tmux と入力するだけで起動します。名前を付けて起動する場合は new -s を使います。

# 新規起動
tmux

# 名前をつけて起動(例: work)
tmux new -s work

# tmux自体の終了
exit

2. プレフィックスキーについて

tmuxの操作(画面分割や移動など)は、基本的にプレフィックスキーを押してから、特定のキーを入力して行います。
デフォルトのプレフィックスキーは Ctrl + b です。

3. デタッチ・アタッチ(セッション管理)

tmux上の作業を維持したまま元のシェルに戻ることをデタッチ、戻った状態から再度tmuxの画面に入ることをアタッチと呼びます。

  • デタッチ: Ctrl + b を押した後、d を押す
  • アタッチ: ターミナルで tmux attach または tmux a を実行

4. ウィンドウ・ペイン分割(画面分割)

1つの画面を複数に分ける「ペイン分割」や、タブのように扱う「ウィンドウ」の操作です。いずれも Ctrl + b の後にキーを押します。

  • 横に分割: Ctrl + b の後 %
  • 縦に分割: Ctrl + b の後 "
  • ペイン間の移動: Ctrl + b の後 矢印キー
  • ペインを閉じる: Ctrl + b の後 x(または exit コマンド)
  • 新規ウィンドウ作成: Ctrl + b の後 c
  • ウィンドウ切り替え: Ctrl + b の後 n (次) または p (前)

ショートカットキー一覧早見表

操作ショートカットキー (Ctrl-b の後)
デタッチ (抜ける)d
画面を左右(横)に分割%
画面を上下(縦)に分割"
ペインの移動矢印キー (↑↓←→)
現在のペインを閉じるx
現在のペインを最大化/元に戻すz
新規ウィンドウの作成c
次のウィンドウへ移動n
前のウィンドウへ移動p
ウィンドウの一覧を表示して選択w
ペインをスクロールモードにする[ (抜けるには q)

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

tmuxの設定は ~/.tmux.conf に記述します。初心者におすすめなのは、マウス操作を有効にする設定です。これにより、ペインの選択やサイズ変更をマウスで直感的に行えるようになります。

# ~/.tmux.conf
# マウス操作を有効にする
set -g mouse on

# 256色表示を有効にする
set-option -g default-terminal "screen-256color"

# プレフィックスキーを Ctrl-a に変更する場合(任意)
# unbind C-b
# set -g prefix C-a
# bind C-a send-prefix

設定を変更した後は、以下のコマンドで設定を再読み込みします。

tmux source-file ~/.tmux.conf

コマンド構文・オプション一覧

# 基本
tmux [GLOBAL_OPTIONS] [COMMAND [ARGS...]]

# 代表的なコマンド
tmux new -s NAME                # セッション作成
tmux attach -t NAME             # 既存へ接続
tmux ls                         # セッション一覧
tmux kill-session -t NAME       # セッション終了
tmux split-window [-h|-v]       # 画面分割(水平/垂直)
tmux new-window                 # 新しいウィンドウ
tmux select-pane -t :.+         # ペイン切替(例)
tmux source-file ~/.tmux.conf   # 設定再読み込み
オプション説明使用例
-S PATHソケットファイルのパスを指定tmux -S /tmp/tmux-work new -s work
-L NAMEソケット名前を指定tmux -L build new -s ci
-f FILE指定した設定ファイルを読むtmux -f ./minimal.tmux.conf new -s test
-2256色を強制tmux -2 attach -t work
-u端末を UTF-8 とみなすtmux -u new -s u8
-v / -vv詳細ログ(デバッグ)tmux -vv new -s debug
-Cコントロールモードで起動tmux -C attach
-Vバージョン表示tmux -V

関連コマンド

  • screen : 同種のマルチプレクサ(歴史が長い)。
  • nohup : 端末切断時もプロセス継続(簡易)。
  • mosh : 不安定回線でもSSHセッションを維持(tmux と併用すると強力)。

参考

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント