私はほとんどのボックスでtmuxを使用しますが、すべてではありません。
私の.bashrcファイルには次の行があります。
[ -z "$TMUX" ] && export TERM=xterm-256color && exec tmux
tmuxが存在する場合はそれを呼び出します。
私アイデアこれは、[ -z $TMUX ]
tmuxが存在する場合にのみ使用されることを意味します。
ただし、tmuxを持たない他のシステムでは、次のような結果が得られます。
-bash: 実行: tmux: 見つかりません
そしてログイン試行が失敗します
私のメインシステムでは
$ echo $TMUX
/private/var/folders/ks/266xy5lj7x35gfj4csc66444b48rvq/T/tmux-373580663/default,55084,4
私も試しましたが[ $TMUX ]
(例なし-z
)、役に立ちませんでした。
また、UbuntuとOSXのための強力なソリューションを探しています。
答え1
echo $TMUX
会議中にこのようなことをしましたかtmux
?TMUX
セッションでのみ設定されるためです。
試してみてください:
[ -z "$TMUX" ] && command -v tmux >/dev/null && TERM=xterm-256color exec tmux
答え2
tmux
いいですね。存在するときだけ始めたい場合$PATH
そしてまだ実行されていない場合は、次のことができます。
command -v tmux >/dev/null && ${TMUX+:} TERM=xterm-256color exec tmux
短く:
tmux -c "${TMUX+!} :" 2>/dev/null && exec tmux -2
2番目の要件は、tmux
設定されていない場合は0を返し、trueの場合、シェルは256色を適用します。実行可能で環境変数が存在しない場合にのみ true を返します。${TMUX}
&&
tmux -2
tmux
$PATH
$TMUX
答え3
使用
which tmux && export TERM=xterm-256color && exec tmux
tmux
存在する場合はバイナリへのパスwhich tmux
として評価されるので。それ以外の場合は空の文字列として評価されるため。tmux
true
tmux
false