これは説明するのが非常に複雑で、検索できる簡単な説明を想像することはできません。
私の現在の設定は、端末を開いたときにこの行が原因で
if [[ -n "$PS1" ]] && [[ -z "$TMUX" ]]
then
tmux && exit
fi
tmuxがすぐに起動します。コマンドの後にtmuxラッパーシェルが&& exit
あるので、tmuxを終了するとすぐに閉じます。tmux
私はこれが基本的に良い動作だと思いますが、まれな場合は、囲むシェルを終了せずにtmuxを分離または終了したいと思います。
tmuxの終了コードが実行され、ラッピングシェルの終了コードが実行されないようにexit 1
tmuxの内部に移動してこれを行うことができると思いましたが、内部的にはtmuxが終了コード0で終了するようです。!=0
exit
exit 1
デフォルトでは、カプセル化されたbashを終了しますが、手動で変更できるという目標を達成する方法を想像できる人はいますか?
答え1
次の手順を実行して、ゼロ以外のシャットダウン状態でtmuxを分離できます。
tmux detach -E false
このためにエイリアスを作成することもできます。
シェルも終了するには、次のようにします。
tmux detach -E false; exit