.png)
여러 SSH 세션에 동시에 로그인되는 경우가 많습니다. 여러 세션에서 로그아웃하려면 로컬 컴퓨터로 돌아올 때까지 CTRL+ 를 누릅니다 .d
그러나 가끔씩 너무 많이 누르면 터미널이 종료됩니다.
CTRL+ d터미널을 닫을 수 없게 만드는 방법이 있나요 ?
터미널 에뮬레이터로 터미네이터를 사용하고 있습니다.
답변1
Bash에서는 일반적으로 eof를 비활성화할 수도 있습니다.
set -o ignoreeof
답변2
IGNOREEOF
Bash에서 환경 변수를 사용할 수 있습니다 . 따라서 실제로 쉘을 종료하려면 키를 42번 export IGNOREEOF=42
눌러야 합니다 .Ctrl+D
POSIX 에도 설정이 set
있습니다 -o ignoreeof
.
답변3
Ctrl-D EOF 문자는 터미널 에뮬레이터가 아닌 쉘에 의해 해석됩니다. 다른 답변은 bash 설정을 다루었지만 다른 쉘은 다릅니다.
C 쉘(예: tcsh)의 경우 tcshrc 파일에 추가할 수 있습니다.
# Prevent accidental logouts completely
set ignoreeof
# Just prevent the first two, and allow the third
set ignoreeof=3
생선 껍질의 경우 Ctrl-D 동작은 키 바인딩으로 제어됩니다. 기본 설정은 이므로 삭제만 지원 하도록 delete-or-exit
의 키 바인딩을 설정할 수 있습니다 .\cd
delete-char
자세한 내용은Fish Github 문제bind
(예를 들어 3.0 이전 버전에서는 이라는 함수에 를 추가해야 하고 fish_user_key_bindings
, 3.0 이후에는 에 넣을 수 있습니다 ~/.config/fish/config.fish
.) 그러나 요약하면 다음과 같습니다.
bind \cd delete-char # Don't exit on accidental Ctrl-D
bind \cd\cd\cd delete-or-exit # Exit on the third one