CheatSheet
日本語 icon日本語English iconEnglish
チートシートとはカンニングペーパーのことです。それが転じて、本来覚えることをまとめておいたものです。
要点をすぐに参照できるようにまとめてみました。

tmux

エンジニアのためのWebチートシート

tmuxはターミナルマルチプレクサです。 セッション・ウィンドウ・ペイン管理、コピーモード、設定カスタマイズなどをチートシートにまとめました。

はじめに

基本概念

概念説明
セッションtmuxの最上位の単位。複数のウィンドウを持つ
ウィンドウセッション内のタブ。画面全体を占める
ペインウィンドウ内の分割された領域
プレフィックスキーCtrl + b(すべてのショートカットの前に押す)

インストール

# macOS
brew install tmux

# Ubuntu / Debian
sudo apt install tmux

# CentOS / RHEL
sudo yum install tmux

セッション管理

CLIコマンド

コマンド説明
tmux新しいセッションを開始
tmux new -s name名前付きセッションを開始
tmux lsセッション一覧を表示
tmux a直前のセッションにアタッチ
tmux a -t name名前を指定してアタッチ
tmux kill-session直前のセッションを終了
tmux kill-session -t name名前を指定してセッションを終了
tmux rename -t old newセッション名を変更

ショートカット

ショートカット説明
prefix + dセッションからデタッチ
prefix + $現在のセッション名を変更
prefix + sセッション一覧を表示・選択
prefix + (前のセッションに移動
prefix + )次のセッションに移動
prefix + L最後に使用したセッションに切替

ウィンドウ管理

ウィンドウのステータスバー表示
1 const app = express()
2
3 app.get('/', handler)
4 app.listen(3000)
~
~
~
[0] 0:bash 1:vim* 2:logs

ステータスバーにウィンドウ一覧が表示される(*が現在のウィンドウ)

ショートカット

ショートカット説明
prefix + c新しいウィンドウを作成
prefix + n次のウィンドウに移動
prefix + p前のウィンドウに移動
prefix + 0-9番号でウィンドウを選択
prefix + ,現在のウィンドウ名を変更
prefix + &現在のウィンドウを閉じる
prefix + wウィンドウ一覧を表示・選択
prefix + l最後に使用したウィンドウに切替

ペイン管理

$ vim app.js
~
~
~
~
~
$ npm run dev
Compiling ...
Server running...
Ready on :3000
$
$ git status
On branch main
nothing to commit
[0] 0:dev*

prefix + % 水平分割 | prefix + " 垂直分割

ペインの分割

ショートカット説明
prefix + %左右に分割(水平分割)
prefix + "上下に分割(垂直分割)

ペイン間の移動

ショートカット説明
prefix + Arrow矢印キー方向のペインに移動
prefix + o次のペインに移動
prefix + qペイン番号を表示(番号を押すと移動)
prefix + ;直前のアクティブペインに移動

ペインのリサイズ

ショートカット説明
prefix + Ctrl+Arrow矢印方向に1セルずつリサイズ
prefix + Alt+Arrow矢印方向に5セルずつリサイズ

ペインの操作

ショートカット説明
prefix + zペインを最大化/元に戻す(ズームトグル)
prefix + x現在のペインを閉じる
prefix + {現在のペインを前に移動
prefix + }現在のペインを後に移動
prefix + !ペインを新しいウィンドウに分離

ペインレイアウト

レイアウト操作

ショートカット説明
prefix + Space次のレイアウトに切替
prefix + Alt+1均等水平レイアウト(even-horizontal)
prefix + Alt+2均等垂直レイアウト(even-vertical)
prefix + Alt+3メイン水平レイアウト(main-horizontal)
prefix + Alt+4メイン垂直レイアウト(main-vertical)
prefix + Alt+5タイルレイアウト(tiled)

コピーモード

開始・移動・検索

ショートカット説明
prefix + [コピーモードを開始
Arrow / h j k lカーソル移動(矢印キー / hjkl)
/前方検索
n次の検索結果に移動
gバッファの先頭に移動
Gバッファの末尾に移動

選択・コピー・ペースト

ショートカット説明
Space選択を開始
Enter選択範囲をコピー
prefix + ]コピーした内容を貼り付け
q / Escコピーモードを終了

設定(~/.tmux.conf)

基本設定

# Reload config
unbind r
bind r source-file ~/.tmux.conf

# Change prefix to Ctrl+a
set -g prefix C-a
unbind C-b
bind C-a send-prefix

# Enable mouse
set -g mouse on

# Start window index at 1
set -g base-index 1
setw -g pane-base-index 1

キーバインド・ステータスバー

# Split panes with | and -
bind | split-window -h
bind - split-window -v

# Vi-style pane navigation
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# Status bar color
set -g status-style bg=black,fg=white
set -g status-left '#[fg=green]#S '
set -g status-right '%H:%M %d-%b'

便利なTips

ペインの同期(synchronize-panes)

# Enable synchronize-panes
:setw synchronize-panes on

# Disable synchronize-panes
:setw synchronize-panes off

便利コマンド

コマンド説明
tmux list-keys全キーバインドを表示
prefix + ?キーバインド一覧を表示(tmux内)
prefix + t時計を表示
prefix + :tmuxコマンドプロンプトを開く
tmux infotmuxサーバーの情報を表示
tmux source ~/.tmux.conf設定ファイルを再読み込み

引用・参考リンク

Related Goods

  • Linux OSの操作に必要なLinuxコマンドを「200本ノック」というコンセプトで学べます。
    Linux OSの操作に必要なLinuxコマンドを「200本ノック」というコンセプトで学べます。
    詳細をみる
  • エンジニアとして必須のLinuxの知識を豊富な図解付きで解説。
ソースコードは今風にGo, Pythonにアップデートされています。
    エンジニアとして必須のLinuxの知識を豊富な図解付きで解説。 ソースコードは今風にGo, Pythonにアップデートされています。
    詳細をみる
  • Vimを何気なく使っている方にこそおすすめしたい一冊!
目から鱗の機能が見つかるはずです。
    Vimを何気なく使っている方にこそおすすめしたい一冊! 目から鱗の機能が見つかるはずです。
    詳細をみる
  • ケーブルに取り付け可能なTypeCとLightningの変換アダプタです。
スタイリッシュなデザインで、Apple製品との相性抜群です。
    ケーブルに取り付け可能なTypeCとLightningの変換アダプタです。 スタイリッシュなデザインで、Apple製品との相性抜群です。
    詳細をみる
  • お気に入りのサウンドデバイスをすぐ取り出せる位置にディスプレイさせておくことができます。
    お気に入りのサウンドデバイスをすぐ取り出せる位置にディスプレイさせておくことができます。
    詳細をみる

WebTerm - Recommended tools

WebTermは、ブラウザでLinuxコマンド・Gitコマンドを安全に実行でき、チュートリアル式で学べるターミナルサンドボックスです。
AIコーディングツールの普及に伴い、CLIの基礎知識を身につける重要性は増しています。実際のターミナルを操作するのに抵抗がある方でも、WebTermはローカル環境を壊す心配がありません。「会員登録不要・無料」で利用でき、学習環境として最適です。

WebTerm Logo

WebTerm

Browser Terminal Sandbox for Learning CLI

開く

All Cheatsheets

エンジニア・プログラマー向けの便利なチートシートを多数まとめています(SP/Tablet/PC対応)
すべてのチートシートを見る