Help us understand the problem. What is going on with this article?

tmuxを使いこなそう(ウインドウ、ペイン、セッション、アタッチ、デタッチ)

More than 3 years have passed since last update.

tmux使ってますか?
いまだに使いこなせていない方も多いのではないでしょうか。
もちろん私もその一人です。

今回は改めてtmuxの使い方を調べてみたのでまとめておきます。

複数の画面や領域を使いこなす

まずは単発のtmuxをうまいこと使うための方法です。

tmuxにはウインドウとペインという概念があります。
ウインドウは簡単に言うと ある一つの画面 のことです。ペインは ある一つの領域 といったところでしょうか。

ウインドウ

ウインドウ追加

まずはtmuxを起動します。

$ tmux

tmuxが起動したらPREFIX cと素早く押してみてください。
PREFIXはデフォルトではCtrl-bです。(変更の仕方はこちらの記事などをご覧ください)

ウインドウ切り替え

複数のウインドウを作成したらウインドウを切り替えてみましょう。

これにはいくつかの方法があります。

  • PREFIX n:次のウインドウに切り替え(next)
  • PREFIX p:前のウインドウに切り替え(previous)
  • PREFIX 数字:番号を指定してウインドウを切り替え
  • PREFIX w:ウインドウ一覧を表示。その後Ctrl-pCtrl-nでウインドウを選択してEnter

ウインドウ名変更

それぞれのウインドウには名前が付けられます。デフォルトではbashあたりになっているのではないでしょうか。

適当なウインドウ内でPREFIX ,(カンマ)を押してみましょう。
入力すると画面下のバーにカーソルが移動してウインドウ名の変更ができます。

ウインドウ終了

ウインドウの終了は基本的にはexitコマンドを使います。

$ exit

exitが使えず強制的に終了させたい場合があるかもしれません。
その場合はPREFIX &を使いましょう。

ペイン

ペイン分割する

ペインは縦横それぞれ、更に再帰的に何度でも分割できます。
どこかのウインドウ内で以下のコマンドを入力してみてください。

  • 縦:PREFIX %
  • 横:PREFIX "

ペイン切り替え

ペイン分割したらペイン間を行き来してみましょう。
コマンドはPREFIX oです。

ペイン終了

終了についてはウインドウの終了とほぼ同じ操作です。
基本的にはexitコマンドを使用しますが、それが出来ない場合はPREFIX xです。

セッションを使いこなす

tmuxを一つ起動した単位=セッションといいます。
セッションは一時的にコンソールから切り離してバックグラウンドで残しておいて後から繋ぎ直す、といったことができます。

セッションの作成

普通にtmuxすれば1つセッションを作成しています。

$ tmux

セッションに名前を付けておくこともできます。

$ tmux new -s my_session

デタッチ

コンソールから切り離すことをデタッチといいます。デタッチされたセッションはバックグラウンドで生き続けます。

デタッチはPREFIX dでできます。

セッションの確認

存在しているセッション一覧を確認することが出来ます。

$ tmux ls

アタッチ

デタッチしたセッションを再度繋ぎ直すことをアタッチと言います。
直前のセッションは以下のようにアタッチ出来ます。

$ tmux a

セッション名を指定してアタッチもできます。

$ tmux a -t セッション名

-tオプションにつづいてセッション名を指定します。
成功すればバックグラウンドにあったセッションの作業をデタッチ時そのままの状態で継続できます。

セッション名の変更

任意のタイミングでセッション名は変更できます。

$ tmux rename -t 変更前セッション名 変更後セッション名

すでにセッション内にいるときはPrefix + $でリネームできます。

セッションの削除

セッションを終了します。

$ tmux kill-session -t セッション名

全て終了する場合はserverごと落としましょう。

$ tmux kill-server

最後に

今回はtmuxの使い方をまとめました。
慣れるととても便利で手放せないものになるでしょう。

プログラマたるもの常に効率良く作業していきたいものですね。

shoma2daをフォロー

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away