web-dev-qa-db-ja.com

tmux.bash_profileの動作の変更

.bash_profileに、Xセッションの起動を求めるスクリプトがあります。 tmuxを起動すると、TTYログインのみを目的としたこのプロンプトが表示されます。

Tmuxの一部である場合にbashを実行するだけの.bash_profileに入れることができるものはありますか?つまり、.bash_profileがtmux内で読み取られているかどうかをbashで確認できますか?

6
bitflips

tmuxは$TMUXという環境変数を設定します。これは、使用しているソケットの場所を保持していると思います。どちらの方法でも、.bash_profileで使用して、tmux内から呼び出されているかどうかをテストできます。

if [ -z "$TMUX" ]; then
    # not in tmux, do non-tmux things
fi

または

if [ -n "$TMUX" ]; then
    # called inside tmux session, do tmux things
fi
13
J.C. Yamokoski

私は通常$TERMを使用してそれをテストします。 screenおよびtmuxは、デフォルトで「screen」に設定します。

5
gelraen