[CentOS]tmuxの使用方法、コマンドについて

概要

私はつい最近までターミナルマルチプレクサはscreenを使用していたのですが、CentOS8からはなんと標準インストールではなくなってしまっていました。
正確にはepelリポジトリからインストールはできるのですが、せっかくなのでもう一つ、有名なターミナルマルチプレクサの「tmux」に移行しようと思い、いろいろ調べてみました。

screenとtmux、どちらも機能的に大きな違いはほぼないのですが、コマンドが違う為慣れるまでは時間がかかりそうです。
なので、使いそうなtmuxのコマンドをまとめてみました。

コマンドの表記について

tmuxのコマンドは、Ctrl+bの後にdを押さなければいけなかったり、「〇〇の後に〇〇をする」といった動作が多いです。
そのため、ここでは「~の後に…」を「~→…」で表します。

コマンドラインでの操作方法

まず、インストールしていない方はインストールしちゃいましょう。
dnf -y install tmux
特に設定とかは何もしなくても問題ないです。

新規セッション開始
tmux

名前をつけて新規セッション(testというセッション)開始
tmux new -s test

セッションの一覧表示
tmux ls

接続クライアントの一覧表示
tmux lsc

セッション再開 (-t <対象セッション名>で名前の付いたセッションの指定も可能)
tmux a (最後にデタッチしたセッションが再開されます)
tmux a -t test(testというセッションが再開されます)

セッション終了 (-t <対象セッション名>で名前の付いたセッションの指定も可能)
tmux kill-session (最後にデタッチしたセッションが終了されます)
tmux kill-session -t test (testというセッションが終了されます)

tmux全体を終了
tmux kill-server

キーコマンドの操作方法

基本

Ctrl+b→? キーバインド一覧
Ctrl+b→: コマンドプロンプト

セッション操作

Ctrl+b→ s セッションの一覧選択
Ctrl+b→ d セッションから離脱(デタッチ)
Ctrl+b→ $ セッションの名前変更
Ctrl+b→Ctrl+Z  tmuxを一時中断

ウインドウ(Screenで言うレイアウト)操作

Ctrl+b→c 新規ウインドウ作成
Ctrl+b→w ウインドウの一覧選択
Ctrl+b→0~9 指定番号のウインドウへ移動
Ctrl+b→& ウインドウの破棄
Ctrl+b→n 次のウインドウへ移動
Ctrl+b→p 前のウインドウへ移動
Ctrl+b→l 以前のウインドウへ移動
Ctrl+b→’ 入力番号のウインドウへ移動
Ctrl+b→. 入力番号にウインドウ番号を変更
Ctrl+b→, ウインドウの名前変更
Ctrl+b→f ウインドウの検索

ペイン(screenで言うウィンドウ)操作

Ctrl+b→” 上下にペイン分割
Ctrl+b→% 左右にペイン分割
Ctrl+b→カーソル 指定方向のペインへ移動
Ctrl+b→q ペイン番号を表示
Ctrl+b→Ctrl+カーソル ペインのサイズを変更
Ctrl+b→! ペインを解除してウインドウ化
Ctrl+b→o ペインを順に移動
Ctrl+b→{ ペインの入れ替え(前方向)
Ctrl+b→} ペインの入れ替え(後方向)
Ctrl+b→Ctrl+o ペインの入れ替え(全体)
Ctrl+b→;  以前のペインへ移動
Ctrl+b→z 現在のペインを最大化/復帰
Ctrl+b→x ペインの破棄
Ctrl+b→Space レイアウトを変更
Ctrl+b→Alt+1~5 レイアウトを変更
Ctrl+b→t ペインに時計を表示

コピーモード

Ctrl+b→[ コピーモードの開始(カーソルキーで自由に移動)
Ctrl+b→Space コピー開始位置決定(viモード)
Ctrl+b→Enter コピー終了位置決定(viモード)
Ctrl+b→] コピーした内容を貼り付け

総括

screenだとCtrl+aだったものがCtrl+bだったり、ペイン(screenのウィンドウ)操作もtmuxの方が細かい気がします。
ペインってなんだ???と最初なりましたが、screenでのウィンドウと認識してしまえばそこまで混乱しなかったです。ただ仕組みが少し違うみたいなので、そちらも調べていきたいですね。
ウィンドウもscreenのレイアウトと同じ意味合いで、初めは混乱しました。
慣れるまではやはり使って使って使いまくって、体に覚えさせるのが一番早いかもしれません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です