tmuxで、「セッションがあればアタッチ、なかったら作成」という形で立ち上げる方法。

tmuxでセッションを使う場合、tmux -a とすれば以前のセッションにアタッチしてくれますが、セッションがない場合、
no sessions
ってそっけなく言われてしまいます。
gnu screenの時は、「screen -D -RR」とすることで、セッションがあってもなくてもよきに計らってくれるので重宝していました。
tmuxで同様のことをする方法ってないのでしょうか?

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/12/15 08:05:39
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:TransFreeBSD No.1

回答回数668ベストアンサー獲得回数268

ポイント500pt

たぶんソケット使ってるだろうからそれを見て……とか考えてググったら
http://filmlang.org/computer/tmux

tmux -a || tmux

単純に失敗したら普通に立ち上げればいいわけですね(^^;
事前に判定したい場合、ソケットの有無見れば良いと思う。デフォルトなら

if [ -S /tmp/tmux-*/default ]; then
  tmux -a $@
else
  tmux $@
fi

引数渡すのも付けてこんなかんじ?
こういうのをエイリアスとかスクリプトとかで作っておくと良いかと思います。

id:mogya

いえーい。動きました。結果を見て分岐書くのはめんどくさそうと思っていたのですが、こんなシンプルに出来たのですね。どうもありがとうございました。

2011/12/15 08:06:27

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません