^D의 ICANON 동작을 시뮬레이션하는 방법을 알고 싶습니다. 즉, FIFO나 PTY 또는 소켓 등의 다른 쪽 끝에 있는 프로그램에서 즉시 읽기 또는 0바이트 읽기를 트리거하는 것입니다. 특히, 0바이트를 읽을 때까지 표준 입력에서 스크립트를 읽은 다음 입력을 읽어 스크립트를 제공하는 사양의 프로그램이 있으며 이 기능을 자동으로 테스트하고 싶습니다.
물론 FIFO에 쓰는 것만으로는 올바른 일이 발생하지 않습니다. 읽은 0바이트가 없기 때문입니다. 돕다?
감사해요!
답변1
내가 아는 한, 이 동작은 최종 장치에 따라 다르므로 이를 사용해야 합니다.
슬레이브 측이 모드인 의사 터미널을 사용하고 마스터 측에 ( )를 ICANON
씁니다 .Ctl-d'\4'
답변2
무엇에 대해:
echo -n '' > /path/to/the/fifo
echo -n
개행 문자가 생성되지 않으며 ''
빈 문자열입니다. 따라서 이로 인해 fifo에 아무 것도(0바이트) 기록되지 않습니다.
echo
거의 아무것도 아닌 것으로 단축할 수 있습니다 .
> /path/to/the/fifo
(이것을 다른 출력을 파이핑하는 것으로 오해하지 않도록 주의한다면)