터미널을 닫을 때 모든 tmux 세션을 닫도록 bashrc를 어떻게 구성합니까?

터미널을 닫을 때 모든 tmux 세션을 닫도록 bashrc를 어떻게 구성합니까?

저는 Gnome Terminal과 tmux를 사용하고 있는데 Gnome Terminal을 닫을 때 모든 tmux 세션도 닫히도록 하고 싶습니다. 가능합니까? 나는 확인했다Arch Wiki의 tmux에 관한 기사몇 가지 관련 코드를 찾았지만 그 중 어느 것도 내가 원하는 효과를 얻지 못했습니다. 이제 Gnome 터미널을 닫았다가 열면 터미널을 닫고 모든 창과 프로그램이 실행되기 전과 똑같은 세션이 표시됩니다. 내가 원하는 것은 Gnome 터미널을 닫을 때 모든 세션이 종료되는 것입니다.

답변1

옵션 1: 사용.bash_logout

당신의.bash_logout문서당신은 할 수다음에 추가tmux kill-server로그인 쉘에 있지 않거나 SIGHUP에 의해 쉘이 종료된 경우에는 아무런 효과가 없습니다.

옵션 2: bash 사용.

이 옵션이 더 강력할 수 있습니다. .bash_profilebash를 사용한다고 가정하고 다음 코드를 입력하세요 .

function close_tmux
{
    tmux kill-server
}
trap close_tmux EXIT

트랩에 관한 다른 리소스에 대한 링크

trap성명서의 일부 배경

많은 trap예제가 포함된 블로그 게시물

Bash 스크립팅 가이드의 함정에 관한 장

함정에 관한 Unix 및 Linux 스택 교환 질문

관련 정보