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

ログイン時にtmuxを自動起動したい!

More than 1 year has passed since last update.

概要

sshでログインしたとき、いちいちtmux -u2って打つのが面倒だし、もしもセッションが残ってたら自動でそれにtmux attachして欲しい、面倒くさがりな欲張りさん向けです。

.bash_profileもしくは.bashrcに以下のコードを追記して下さい。

code

.bashrc
alias tmux="tmux -u2"

# tmuxの自動起動
count=`ps aux | grep tmux | grep -v grep | wc -l`
if test $count -eq 0; then
    echo `tmux`
elif test $count -eq 1; then
    echo `tmux a`
fi

やっていること

$countには、現在起動中のtmuxプロセス数が入ります。なので、以下の条件で各状態を判断出来るはずです。

  • $count = 0ならtmuxは起動していないはずなので、tmux -u2tmuxを起動します。
  • $count = 1ならtmuxのセッション自体は起動しているものの、ユーザはtmuxへとattachしていないはずです。
  • $count > 1なら、ユーザはすでにatattchしているので、これ以上の処理はしません。新しいpane作るたびに.bashrcは読み込まれるので、無限にatattchしてしまうのを防ぐためです。
kiwi-bird
ゲーム制作、サイト制作が好きです。お手製のウェブアプリ「Helium」を日々改造しています。 ※R-18なので公共の場からはアクセスしないようにね♡
https://kiwing.ddns.net/
Why not register and get more from Qiita?
  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