LoginSignup
0
0

More than 5 years have passed since last update.

新人エンジニアの時に知っておきたかったこと[tmux編]

Last updated at Posted at 2018-08-05

はじめに

この記事は新人エンジニアの時に知っておきたかったことに含まれます。
他の記事は上記のリンクから遷移可能です。あわせてご覧ください。

tmuxとは?

tmuxはターミナルマルチプレクサーです。複数のターミナルを一つのスクリーン内に作成し、操作することができます。

バックグラウンドで処理を実行中に一度スクリーンから離れて後から復帰することも可能です。

readmeより

tmuxの何が便利なのか

バックグラウンドで動くため、ターミナルアプリでウィンドウを閉じてもすぐに同じ内容のウィンドウを再開できます。

たとえば、どこかのサーバーにログインして作業している際にネットワークが切れた場合にtmuxを使用していれば、ネットワークが切れる前の状態で作業を再開できます。

インストール

依存

readmeに書かれている依存ツールが必要になります。
インストールの前に依存ツールを用意しておきましょう。

インストール

source

試しにtmux2.6をインストールしてみます。
ソースは~/local/srcに配置し、tmux2.6は~/local/binに配置します。

$ mkdir -p ~/local/src
$ cd ~/local/src
$ wget 'https://github.com/tmux/tmux/releases/download/2.6/tmux-2.6.tar.gz'
$ tar zxvf tmux-2.6.tar.gz
$ cd tmux-2.6
$ ./configure --prefix=$HOME/local
$ make
$ make install

設定ファイル

.tmux.confという設定ファイルがあります。

キーバインド等の設定が可能です。

達人に学ぶ.tmux.confの基本設定

操作

操作に関しては以下の記事が参考になります。

tmuxの使い方

tmuxinatorを使うともっと便利に

tmuxで起動するセッションを予め設定しておき、そのセッションを一発で起動してくれます。

インストール

$ gem install tmuxinator

もし、使用するgemとrubyのバージョンがtmuxinatorのバージョンと合わない場合、tmuxinatorのバージョンを指定すればインストール可能です。

// 例
$ gem install tmuxinator -v "0.9.0"

設定

設定ファイル

$ mkdir -p ~/.tmuxinator
$ cd ~/.tmuxinator
$ wget https://raw.githubusercontent.com/tmuxinator/tmuxinator/master/completion/tmuxinator.zsh
$ echo 'source ~/.tmuxinator/tmuxinator.zsh' >> ~/.zshrc

確認

以下のコマンドで設定をインストール状況を確認できます。

$ mux doctor

スクリーンショット 2018-07-30 22.57.51.png

Yesとなっていればインストール完了です。

使い方

以下のコマンドを実行すると、プロジェクト用の設定ファイルが作成されます。
$projectをあなたの好きな名称に変更してください。

$ mux new $project

readmeを参考にして設定ファイルを設定してみてください。

設定が終わったら、以下のコマンドでセッションを起動します。

$ mux $project

まとめ

この記事ではtmuxをご共有しました。
初めてtmuxを触った時には、これを使うと何がいいんだろうと感じました。

ところが、しばらく触ってみると、その便利さを実感するようになりました。
tmuxinatorと合わせて使うことで、一発で作業環境を用意することが可能になります。
とても便利です。

ぜひ、早い段階から導入してtmuxの利用を習慣化してみてください。
きっと作業効率が上がるはずです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0