tmux入門 最低限覚えるべき基本のコマンドなど

tmuxはターミナルマルチプレクサという名の通り、 リアルな一つのターミナルの上で複数のターミナルを開けるというもの。

tmuxはターミナルのすごいやつというぐらいの位置づけだったが、 このたび開発にあたって必要になったので使うことにしたのでメモ。 使い始めて1週間でもう開発には手放せないツールと化したので あらゆるエンジニアにオススメしたい気持ち。

tmux http://tmux.sourceforge.net

tmuxをする理由

まずは自分の例。 開発サーバーにSSHしてそこで実装するわけだが、 お昼へ行く時にPCを閉じてスリープさせるとネット接続が途切れ、 またsshして今までに整えたvimのタブやペイン、またはtail -ftopしていた画面をまた作り直さなければいけない!! この面倒臭さを5回ぐらい味わった後に、tmuxならこれが解決できるということで手を出すことに。

tmuxは仮想環境なのでその状態を保存でき、 前回開いていたタブやペインをそのまま再開できるのが一番の利点だと把握している。 今日の仕事が終わったときにターミナルの状態を保存しておき、 明日の朝にはさくっとそのターミナルの環境を取り戻せる。

開発サーバーにログインしてvimで開発をする人にとってはほぼ必須のツールといえる。 それからインフラ系の作業を定常的に行う人も使うと便利。

最低限覚えるべきショートカット

覚えるべきものを絞ってとりあえず使ってみることを目指す。 C-と書いてあるのはControlキーを押すことを表す。

まず覚えるべきはC-b。これはtmuxのプレフィックスで、多くのコマンドはこのコマンドを打った後に行う。

C-b

ただC-bはターミナル上だとカーソルを一文字分左に動かすキーでもあるので、 他のブッキングしないものに変更することが多いようだ。

新たなタブ作成はC-b cで行う。

C-b c

そのタブを移動するにはC-b pもしくはC-b n。pがprevious、nがnext。

1画面を複数画面に区切った場合のそれぞれをペインというが、 そのペインを作成するのがC-b "C-b %C-b "は縦に分割したペインを作成し、C-b %は横に分割したペインを作成する。 後者のほうがよく使うかも。

C-b %

ペイン間の移動はC-b o

現在のtmuxの状態を保存して閉じるときはtmux detachをターミナルに打つ。

$ tmux detach

次回以降は$ tmux attachでもとの状態に戻る。

$ tmux attach

以上のコマンドぐらいでtmuxはほぼほぼ便利に使える。

よきtmuxライフを。

tmux

参考URL

tmux — 仮想端末でリモート仕事を安全に http://meme.biology.tohoku.ac.jp/students/iwasaki/dev/tmux.html