回答:
それがtmuxマニュアルで言っていることにもかかわらず:
The target-session rules for attach-session are slightly
adjusted: if tmux needs to select the most recently used session,
it will prefer the most recently used unattached session.
ドリューの答えは、次のような状況では適切に機能しません。
0: 1 windows (created Wed Nov 7 23:51:08 2012) [177x47]
1: 1 windows (created Wed Nov 7 23:51:33 2012) [177x47] (attached)
tmux at
最後のセッション(#1)に接続します(このセッションはまだどこかに接続されていますが)。これは、いくつかのtmuxセッションを実行し、分離されたものにのみ接続するという全体の考えを台無しにします(mosh + tmux + iterm2を使用して完全なローミング端末を作成するため)。
別のアプローチは、接続されていないセッションを手動で選択することです:
tmux ls | grep -vq attached && tmux at `tmux ls | grep -vm1 attached | cut -d: -f1`
一度に2つのtmuxセッションしか使用しない傾向があるため、各ターミナルウィンドウでこのようなことを行います。
端末ウィンドウ0:
tmux attach -t 0 || tmux new
端末ウィンドウ1:
tmux attach -t 1 || tmux new
どうですか
tmux attach || tmux new
または、ファイル~/.tmux.conf
が存在しない場合は作成して、追加します
new-session
実行時にセッションがない場合に新しいセッションを作成するようにしますtmux attach
。
のtmux
エイリアスを作成すると便利な場合もありますtmux attach
。
(tmux ls 2>/dev/null | grep -vq attached && tmux at) || tmux