시도 Ctrlad하고 입력했지만 비참하게 실패하여 Ctrld이제 화면이 내 명령에 응답하지 않습니다. 이런 메시지가 나타나고 화면에서 실행 중인 애플리케이션(마인크래프트 서버)은 여전히 잘 실행되고 있지만 서버 명령을 실행할 수 없습니다.
Ctrlad제대로 작동하고 다시 연결되었지만 screen -r -d -S minecraft
등록된 명령이 없습니다.
통제력을 회복할 수 있는 방법이 있나요?
답변1
Ctrld일반적으로 EOF 신호를 생성하도록 구성됩니다. 이 신호는 기본적으로 대부분의 쉘에서 쉘 입력의 끝을 나타내고 쉘이 종료됨을 나타냅니다. 그러나 셸에서 다른 프로세스(minecraft)를 시작했기 때문에 해당 프로세스가 종료되기를 기다리고 있습니다.
이 작업은 취소할 수 없습니다.
앞으로 이런 일이 발생하지 않도록 하려면 bash를 사용한다고 가정하고 환경 변수를 1보다 큰 숫자로 설정하면 실수로 여러 번 IGNOREEOF
부딪혀야 합니다 .Ctrld
답변2
나는 똑같은 문제를 해결해야 할 때 이 특정 기사를 발견했습니다. 나생각하다이 기사를 읽고 "죽은" 화면 창을 사용하여 몇 가지 작업을 시도한 후 우연히 답을 찾았습니다.
상태:나는 bash에서 명령줄 편집기로 "set -o vi"를 사용합니다. 뒤로 스크롤하려면 "ESC k"를 사용합니다. 빈 프롬프트로 다시 취소하려면 CTRL-C를 누르고 싶었지만 실수로 CTRL-D를 눌렀습니다. 이렇게 하면 화면의 창이 잠깁니다. 화면 자체는 여전히 괜찮고 다른 화면 창도 모두 괜찮습니다.
해결책(?):나는 XOFF(ctrl-s) 다음에 XON(ctrl-q)을 보내면 창을 "고정 해제"할 수 있다는 것을 발견했습니다. XON만 보내기 - XOFF를 먼저 보내지 않고 -아니요일하다.
그러나 CTRL-D 잠금을 완전히 재현할 수 없습니다. 어떤 상황으로 인해 발생했는지 모르겠습니다! 문제를 재현할 수 없기 때문에 솔루션을 테스트할 수 없으므로 실제로 솔루션을 찾았는지 아니면 잠시 후 어떻게든 "저절로 해결"되는지 알 수 없습니다. *어깨를 으쓱하다*
혹시 테스트해 보신 분이 계시다면 답변 부탁드립니다! :영형)