Linux Mint - tmux 起動時に自動でアタッチ!
Updated:
前回は、仮想端末管理ソフト tmux を Linux Mint へインストールしました。
今回は、tmux 起動時にセッションが存在すれば(デタッチしたものあれば)、自動でアタッチする方法についての記録です。
0. 前提条件
- Linux Mint 14 (64bit) での作業を想定。(Unix 系なら同じだと思う)
- インストールする tmux のバージョンは 1.6
- シェルは bash.
1. シェルスクリプト作成
以下の内容でシェルスクリプトを作成する。
File: ~/tmux.sh
1
2
3
4
5
6
7
if [ -z $TMUX ]; then
if $(tmux has-session 2> /dev/null); then
tmux -2 attach
else
tmux -2
fi
fi
$TMUX
は、tmux のセッションの中にいる場合にセットされる。-z
で文字列の長さの有無をチェック。tmux
のhas-session
というオプションでセッションが存在するか否かを確認できる。2> /dev/null
はセッションが存在しない場合に出力されるエラーを表示しない。tmux
のオプション-2
は、256色対応のため。(環境によっては不要)
2. シェルスクリプト実行権限付与
作成したシェルスクリプトに実行権限を付与する。
$ sudo chmod +x tmux.sh
3. .bashrc 編集
“.bashrc” に以下の記述を追加する。
(tmux
を実行すると、tmux.sh
が起動するということ)
File: ~/.bashrc
1
alias tmux='~/tmux.sh'
4. .bashrc 反映
“.bashrc” の変更を反映する。
$ source .bashrc
5. 動作確認
実際に確認してみる。
デタッチしたもの(セッション)が存在しなければ新しいセッションで起動し、デタッチしたもの(セッション)が存在すれば直近のセッションで起動する、ことを確認する。
6. 参考サイト
これで、少し楽になりました。
以上。
Comments