【AWS/Linux】tmux コマンド チートシート
はじめに
tmux はターミナルマルチプレクサで、一つのターミナルで複数のセッション、ウィンドウ、ペインを管理できます。本チートシートでは、tmux の基本操作から高度な使い方までを網羅し、図や具体的なコマンド例を用いてわかりやすく解説します。
目次
tmux の基本概念
tmux での基本構造は以下の通りです:
- セッション: 独立した tmux のインスタンス。1つのセッション内で複数のウィンドウやペインを管理します。
- ウィンドウ: セッション内のタブのようなもので、それぞれ独立したターミナル画面を持ちます。
- ペイン: ウィンドウを分割した領域。複数のペインで同時に複数のターミナルを表示できます。
以下の mermaid 図は、tmux の階層構造を示しています。
tmux のインストール
tmux は多くの Linux ディストリビューションや macOS で利用可能です。インストール方法は以下の通りです。
macOS (Homebrew 利用)
brew install tmux
Ubuntu/Debian 系
sudo apt-get update
sudo apt-get install tmux
CentOS/Fedora 系
sudo yum install tmux
インストール後、tmux -V
コマンドでバージョンを確認できます。
tmux の起動と終了
tmux の起動
新しい tmux セッションを開始するには、シンプルに以下を実行します。
tmux
特定の名前を付けたセッションを作成する場合:
tmux new -s mysession
tmux からの切断・再接続
一時的にセッションから切断する方法
セッションをバックグラウンドで動作させたまま、端末から抜けるには以下を入力します。
Ctrl + b, d
-
Ctrl + b
は tmux のプレフィックスキー(デフォルト)で、次のコマンドを tmux に送信することを示します。 - その後
d
を押すことでデタッチ(detach)します。
切断したセッションに再接続する方法
デタッチしたセッションに再接続するには:
tmux attach-session -t mysession
既存のセッション一覧を確認するには:
tmux ls
tmux セッションの終了
tmux セッション内の全てのウィンドウとペインで終了コマンド(例:exit
)を実行するか、以下のコマンドでセッション全体を終了できます。
tmux kill-session -t mysession
セッションの操作
セッションの作成と名前の変更
-
新しいセッション作成:
tmux new -s session_name
-
セッションの一覧表示:
tmux ls
-
セッションの切り替え(既存セッションにアタッチ):
tmux attach -t session_name
セッション間の移動
tmux 内で複数のセッションを扱う場合、一度デタッチして別のセッションに接続するのが一般的です。なお、tmux 2.6 以降ではセッション間の直接移動はサポートされていませんが、以下の方法で実現可能です。
- 現在のセッションをデタッチ:
Ctrl + b, d
- 目的のセッションに再接続:
tmux attach -t other_session
セッションの終了
特定のセッションを終了するには、以下のコマンドを使います。
tmux kill-session -t session_name
ウィンドウの操作
ウィンドウの作成・移動・削除
新しいウィンドウの作成
Ctrl + b, c
-
Ctrl + b
を押してプレフィックスを入力後、c
を押すと新しいウィンドウが作成されます。
ウィンドウ間の移動
-
次のウィンドウへ移動:
Ctrl + b, n
-
前のウィンドウへ移動:
Ctrl + b, p
-
特定の番号のウィンドウに移動(例:ウィンドウ2へ):
Ctrl + b, 2
ウィンドウの一覧表示
ウィンドウ一覧を表示するには:
Ctrl + b, w
ここで矢印キーや数字キーを使って移動し、Enter キーで選択します。
ウィンドウの名前変更
現在のウィンドウの名前を変更するには:
Ctrl + b, ,
このコマンドを押すと、ウィンドウ名を入力するプロンプトが表示されます。
ウィンドウの削除
ウィンドウを閉じるには、ウィンドウ内の全てのペインで exit
コマンドを実行するか、以下のように指定します。
Ctrl + b, &
これにより確認メッセージが表示され、ウィンドウを削除できます。
ウィンドウ操作の図解
以下の mermaid 図は、ウィンドウ作成と移動の流れを示しています。
ペインの操作
ウィンドウを複数のペインに分割して使うと、同時に複数のターミナルを操作できます。
ペインの分割
垂直分割
現在のウィンドウを垂直に分割(左右に分割):
Ctrl + b, %
水平分割
現在のウィンドウを水平に分割(上下に分割):
Ctrl + b, "
ペイン間の移動
ペイン間を移動するには:
Ctrl + b, ← (左)
Ctrl + b, → (右)
Ctrl + b, ↑ (上)
Ctrl + b, ↓ (下)
あるいは、プレフィックスの後に o
を押すと、次のペインに順番に移動できます。
Ctrl + b, o
ペインのリサイズ
ペインのサイズを変更するには、プレフィックスを押した後にコロン :
を入力し、コマンドモードに入ります。そこで以下のコマンドを使用します。
- 左に拡大:
resize-pane -L 5
- 右に拡大:
resize-pane -R 5
- 上に拡大:
resize-pane -U 5
- 下に拡大:
resize-pane -D 5
ここでの 5
はピクセル数やセル数を表します。必要に応じて調整してください。
ペインの入れ替え
ペインの位置を入れ替えるには:
Ctrl + b, { # 現在のペインを左に移動
Ctrl + b, } # 現在のペインを右に移動
ペインの切り離し・統合
ペインを一時的に切り離す(ズーム)
Ctrl + b, z
これにより現在のペインが全画面表示になり、もう一度押すと元に戻ります。
ペインの閉鎖
特定のペインを閉じるには、そのペイン内で exit
を入力するか、以下を使用します。
Ctrl + b, x
この操作で閉じる確認メッセージが表示されます。
その他便利なコマンド
tmux コマンドモード
プレフィックスの後にコロン :
を押すと、コマンドモードに入ります。ここで様々な tmux コマンドを直接入力できます。例えば:
- セッション一覧表示:
list-sessions
- ウィンドウ一覧表示:
list-windows
ステータスバーの表示・非表示切替
Ctrl + b, S
ヘルプの表示
全ての tmux キーバインドを確認するには、以下を実行します:
tmux list-keys
設定とカスタマイズ
tmux の設定ファイル(通常 ~/.tmux.conf
)を編集することで、自分好みにカスタマイズできます。以下に一例を示します。
# プレフィックスキーを Ctrl+a に変更
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# ステータスバーの色を変更
set-option -g status-bg colour235
set-option -g status-fg white
# ウィンドウ番号を常に表示
set-option -g renumber-windows on
設定ファイルを編集した後、tmux セッションに反映させるには以下を実行します。
tmux source-file ~/.tmux.conf
まとめ
このチートシートでは、tmux の基本的な操作方法から高度な使い方までを図や具体的なコマンド例を用いて解説しました。tmux を使いこなすことで、ターミナルの作業効率が大幅に向上します。まずは基本的な操作に慣れ、徐々に応用的な設定やカスタマイズに挑戦してみてください。
tmux は柔軟かつ強力なツールです。この記事を参考に、自分に合った tmux の使い方を見つけましょう!
Happy tmux-ing!
Discussion