私は毎回tmuxを入力するのではなく、デフォルトのbashシェルがtmuxを直接入力できるようにしたいです。
ベストアンサー1
@StarNamerからの返信通常は正確ですが、一般的に確認するために次のテストを実行します。
tmux
システムに存在- 私たちはインタラクティブシェルにいます。
tmux
自体内で実行しようとしません。
だから私はこれを次に追加します.bashrc
:
if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
exec tmux
fi
引用する
- bash を使用して
command
コマンドが存在することを確認します。http://man7.org/linux/man-pages/man1/bash.1.html#SHELL_BUILTIN_COMMANDS - コマンドが存在するかどうかを確認する
command
のではなく、なぜ使用するのですか?which
https://unix.stackexchange.com/a/85250 - 対話型シェルを確認するには
$PS1
-https://www.gnu.org/software/bash/manual/html_node/Is-this-Shell-Interactive_003f.html $TERM
"tmux内で実行されているすべてのプログラムの"環境変数の予想状態 -http://man7.org/linux/man-pages/man1/tmux.1.html#WINDOWS_AND_PANES