Cygwin - 첫 번째 쓰기 후 꼬리가 입력 파이프 읽기를 중지합니다.

Cygwin - 첫 번째 쓰기 후 꼬리가 입력 파이프 읽기를 중지합니다.

Ubuntu에서 내 응용 프로그램을 실행하고 해당 입력을 리디렉션하는 다음 스크립트가 있습니다. 여기서 $in은 텍스트 줄을 stdin으로 보내는 명명된 파이프입니다.

tail -f "$in" | "$app_bin" $app_args &

필요할 때 내 애플리케이션에 입력을 보낼 수 있습니다.

printf "%s\n" "text input" >> "$in"

그러나 Cygwin 환경(Windows)에서 실행하는 경우 두 번째 명령은 처음에만 작동합니다! 그런 다음 두 번째 텍스트 줄을 보내려고 하면 아무것도 하지 않고 정지되고 $in을 작동하려고 하면 "장치 또는 리소스 사용 중"이라는 오류가 발생합니다.

이 문제를 어떻게 해결하셨나요? Cygwin에만 적용됩니까?

답변1

불완전한 구현일 수 있음

https://www.cygwin.com/ml/cygwin/2016-01/msg00085.html

관련 정보