세션을 올바르게 닫는 단축키를 사용하여 셸을 종료합니다(exit를 입력하는 대신).

세션을 올바르게 닫는 단축키를 사용하여 셸을 종료합니다(exit를 입력하는 대신).

저는 매일 사용하는 많은 ssh 세션에 대해 ProxyJump 명령을 사용하고, 해당 세션에서 사용자를 자주 전환하기도 하는데, exit이를 3~4번 연속으로 입력하는 것은 그리 재미가 없습니다.

newlineSSH 세션을 + 종료한다는 것을 알고 있습니다 . 가능한 한 친숙하게 종료되는지 확인해야 하지만 단일 명령이나 단축키를 사용하여 현재 셸에서 모든 세션을 종료하는 방법(예: 3~4번 입력) ~내 경우에는 이것이 일회성?.exitexit

답변1

Ctrl- D많은 경우 쉘을 종료합니다. 를 입력하는 것보다 빠릅니다 exit Enter. 여전히 모든 것을 죽이는 단일 명령은 아니지만 몇 번 누른 Ctrl채 클릭하는 것이 D더 쉽고 빠릅니다 . 이것이 귀하의 사용 사례에 얼마나 중요한지 잘 모르겠습니다.

자세히 논의됨여기.

답변2

~.실제로 타이핑 중하다가장 깊은 팁에 대한 모든 "중첩" 연결을 닫습니다.

모든 쉘이 SIGHUP을 우아한 죽음으로 처리하도록 구성되어 있는 한, 원하는 친숙한 종료로 그렇게 할 것입니다. Bash는 기본적으로 이 작업을 수행합니다. 예를 들어 종료 .bash_history후 더 깊은 세션에 대한 파일이 올바르게 업데이트되었는지 확인하거나 bash-es가 종료 시 .bash_history를 업데이트하지 않도록 설정한 경우 EXIT 이벤트에서 ~.이를 수행할 수 있습니다 . trapyour ~/.bash_logout) 어딘가에 무언가를 쓴 다음 실행되는지 확인하는 명령을 사용합니다.

또한 "현재 셸의 모든 세션을 종료합니다"라는 말이 무슨 뜻인지 잘 모르겠습니다. 각 대화형 bash 세션은 단지 하나의 세션이며, 입력하는 명령은 항상 ProxyJump 체인의 가장 깊은 쉘에만 입력됩니다. "현재 셸의 백그라운드 작업"을 의미하는 경우 ssh 데몬이 SIGHUP을 수신하면 bash는 모든 작업에 SIGHUP을 보냅니다 ~.. 따라서 실행 중인 작업이 SIGHUP에 올바르게 반응하면 이 클래스 종료는 완전히 사용자 친화적이어야 합니다.

관련 정보