はじめに
tmuxにもだいぶ慣れ、もはやtmux無しでは生きられない体になってしまったため、
死なないように使い方をメモっておこうと思います
少しづつ充実させていければいいなという気概です
概要
- セッション操作
- ウィンドウ操作
- ペイン操作
- その他の操作
セッション操作
セッションの作成・削除
作成
セッション作成
# セッションを作成し、作成したセッションにアタッチする
[root@centos ~]# tmux new-session -s <session-name>
# 上記のオプション省略バージョン
[root@centos ~]# tmux new -s <session-name>
# セッションを作成するが、作成したセッションにはアタッチしない
[root@centos ~]# tmux new -s <session-name> -d
# この書き方でも上記と同じことになる
[root@centos ~]# tmux rename-session <session-name>
セッションにアタッチした状態からのセッション作成
<Prefixkey> : new-session -s <session-name>
<Prefixkey> : new -s <session-name>
削除
セッション削除
# 特定のセッションを削除
[root@centos ~]# tmux kill-session -t <session-name>
# 全てのセッションを削除する
[root@centos ~]# tmux kill-server
or
[root@centos ~]# tmux kill-session -a
セッションにアタッチした状態からのセッション削除
<Prefixkey> + x
kill-pane <window-name>? (y/n)
セッションへのアタッチ・デタッチ
アタッチ
[root@centos ~]# tmux a -t <session-name>
セッションへアタッチしている状態からのデタッチ
<Prefixkey> d
セッション間の移動
<Prefixkey> :choose-session
もしくは
<Prefixkey> s
こんな感じでセッション一覧のメニューが出るので選択すると対象セッションへ移動する
セッション一覧の表示
セッション一覧表示
[root@centos ~]# tmux ls
ansible: 1 windows (created Tue Jul 26 11:12:23 2016) [294x78]
nginx: 1 windows (created Fri Jul 29 16:53:06 2016) [294x78]
centos7: 1 windows (created Tue Jul 26 10:18:50 2016) [294x78]
セッション名の編集
[root@centos ~]# tmux rename-session -t <target-session> <new-sessionname>
ウインドウ操作
ウインドウの作成・削除
作成
# 最後にアタッチしていたセッションに新しいウインドウを追加
[root@centos ~]# tmux new-window
# 対象のセッションにウインドウを追加
[root@centos ~]# tmux new-window -s <session-name>
アタッチした状態からのウインドウ作成
# 対象のセッションにアタッチした状態からのウィンドウ作成
<Prefixkey> c
ウィンドウ間の移動
ウィンドウ移動
# 次のウィンドウへ移動
<Prefixkey> n
# 前のウインドウへ移動
<Prefixkey> p
ウインドウリストでの移動
<Prefixkey> :choose-window
もしくは
<Prefixkey> w
こんな感じでウィンドウ一覧のメニューが出るので選択すると対象ウィンドウへ移動する
ウインドウ名の編集
編集
<Prefixkey> ,
(rename-window)[new-name]
ペイン操作
ペインの分割
分割
# 縦分割
<Prefixkey> :split-sindow -h
# 横分割
<Prefixkey> :split-sindow -v
以下のような設定で|
(パイプ)で縦分割、-
(ハイフン)で横分割できるようにしております。
tmux.conf
## | でペインを縦に分割する
bind | split-window -h
## - でペインを横に分割する
bind - split-window -v
ペインの移動
移動
# 矢印キーでのペイン間移動
<Prefixkey> ↑ or ↓ or → or ←
ぼくはVimのキーバインドで移動できるようにしております。
tmux.conf
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
ペインの同期
同期
# 複数のペインに対して一斉に同じ文字を入力
<Prefixkey> set-window-option synchronize-panes [ on | off ]
もちろんショートカットキーでON/OFFできるように設定しております
tmux.conf
bind-key e setw synchronize-panes on
bind-key E setw synchronize-panes off
ペインのサイズ変更
その他の操作
tmux.confファイルの読み込み
以外とこれがわからなくて結構ハマったりしたことがありますw
<Prefixkey> :source-file ~/.tmux.conf