tmuxを使いこなす

 

tmuxを使いこなし、超快適ターミナル環境を実現しましょう。まだ使ったことが無い方は、tmuxの基本的な使い方を参考にしてみて下さい。 インストールするには、tmuxの概要とインストールを参考に。 ここでは、以下の環境での使用を前提にしています。

  • CentOS6.8 x86_64
  • tmux-2.3

便利な使い方

まずは、どのようなコマンドが存在するかを調べる方法について。 C-b ?をタイプすると利用可能ショートカットキーのリストが表示されます。(Ctlキーとbキーを同時に押してから?キーを押す。) 興味がある方は、ここで説明する以外にどのような事ができるか調べてみて下さい。

  • Paneをフルサイズにする。

C-b zでカーソルがあるPaneがフルサイズになります。 もう一度C-b z でまた元のサイズに戻ります。

  • Paneのサイズを変更する。

C-b C-<矢印キー>でPaneのサイズが矢印キーの方向に変更されます。

  • Pane間の移動

C-b o でペイン間を移動できます。また、C-b q で以下のようにPaneのインジケータ番号(IDみたいなもの)を表示させることができます。インジケータ番号が分かれば、C-b q インジケータ番号 で指定したPaneへ移動できます。但し、画面にインジケータ番号が表示している間に指定しなければなりません。

tmux_indecator

デフォルトでは表示時間がかなり短いので、次のようにして変更します。C-b : を入力するとWindowのステータスバー部分が黄色くなりvimのExコマンドモードのように:が現れますので、その後に:set display-panes-time 10000 のように入力します。指定する数値の単位はミリ秒。

  • Paneを他のWindowに移動する。

あるWindowに存在するPaneを別のWindowに移す。 C-b : を入力するとWindowのステータスバー部分が黄色くなりvimのExコマンドモードのようにが現れ、その直後にカーソルが移ります。 そこで次のコマンドを実行します。join-pane -t 移動先のWindowのタブ番号 移動先のWindowタブ番号は、:2 のように記述します。 以下の例では、Window 0にある右側のPaneでtopコマンドを実行しているPaneが、Window 2に移動しているのが分かります。

tmux_move_pane

  • Windowの一覧を表示する。

C-b w でそのSession内で開いているWindowの一覧を表示します。 上部にWindow一覧が表示され、操作したいWindowを選択してエンターを押すとそのWindowに移動できます。

tmux_window_list

  • Windowを別の番号に移動

多くのWindowを開いていると、近い番号にまとめたいWindowがでてきたりします。 そんな時は、次のコマンドでWindowを別の番号に移動できます。: move-window -t Windowのタブ番号 但し、既にその番号にWindowが存在する場合は失敗します。

  • Windowを別の番号のWindowとスワップさせる

Windowの位置をスワップさせるには、: swap-window -t Windowのタブ番号 でできます。

  • コピーペースト
  1. tmuxでコピー開始するには、C-b [
  2. スペースキーを押すとコピーの始点確定
  3. カーソルキーを画面上のコピー終点まで移動する
  4. エンターを押すと選択した範囲がコピーバッファーへ保存される
  5. ペーストしたい場所にカーソルを移動し、C-b ]

コピーバッファに保存した内容は、次のようにして確認できます。 :list-buffers または、C-b # 。 また、C-b = を入力するとバッファ内容がリスト表示され選択してエンターを押すとペーストできます。

tmux_copy_buf_select

コピーバッファの内容を削除するには、:delete-buffer -b バッファ番号 でOKです。

最後に、上記でかいたコマンドの別名を載せておきます。コマンドが長いと覚えるのも大変ですし、タイプするのも面倒です。 manで確認できます。

join-pane joinp ペインの移動
move-window movew ウィンドウ移動
swap-window swapw ウィンドウスワップ
list-buffers lsb コピーバッファリスト表示
delete-buffer deleteb コピーバッファ削除
  • このエントリーをはてなブックマークに追加
  • Pocket

この記事へのコメントはこちら