win8.1에서 cygwin을 실행하는 데 사용되는 반면 EOF를 나타내는 데 사용되는 CTRL-Z 프로그램에 입력을 제공합니다. 오늘 win10에 cygwin을 설치하고 "a.out"을 실행했습니다. 입력 데이터를 입력 한 후 CTRL-Z를 누르면 "Suspended"라는 메시지가 나타나고 쉘 프롬프트가 나타납니다. 나는 bash와 csh, 같은 결과로 이것을 시도했다. CTRL-D도 작동하지 않고 쉘을 죽이고 있습니다.Windows 10의 cygwin에서 EOF는 무엇입니까
단지이 문제 뿐이라는 것을 확인하기 위해 새로운 input.txt 파일을 만들고 관련 입력 데이터를 입력 한 다음 "a.out < input.txt"를 실행하여 제대로 작동하는지 확인했습니다. 벌금. 따라서 문제는 STDIN에 대한 EOF 정의에만 있습니다.
이 문제를 해결하는 방법은 무엇입니까?
참고 : 나는이 질문을 폐쇄하고 새로운 질문을 포함하여 유닉스 계열 시스템에 reading till EOF in java on cygwin on windows-10
ctrl-z는 프로세스를 일시 중단하는 유닉스 명령입니다. MSYS를 고려해 보셨습니까? Ctrl-D가 작동합니다. –
키보드 드라이버가'stty -a '로 신호를 생성하는 방식을 확인하십시오 ('cchars'에서'eof'를 찾으십시오). 'stty '를 사용하여 설정을 변경할 수는 있지만 권장하지 않습니다. CTRL + D는 쉘 EOF를 보내기 때문에 "쉘을 죽입니다". 당신은'set -o ignoreeof'를 사용할 수 있습니다 – cdarke
Jean-Francoise : 저는 msys가 아닌 cygwin을 사용하고 있습니다. – R71