프로그램을 stdin에서 읽고 처리해야합니다. (예 : "tee/some/file")expect : 스폰 프로세스에 EOF를 보내는 방법
이 프로그램은 종료하기 위해 stdin end를 기다립니다.
Expect
에서 내가 send
많은 콘텐츠를 보낸 후 프로그램에 "EOF"를 보내는 방법은 무엇입니까?
Expect에는 close
명령이 있지만 SIGHUP도 보내고 더 이상 프로그램 출력을 expect
수 없습니다.
프로그램을 stdin에서 읽고 처리해야합니다. (예 : "tee/some/file")expect : 스폰 프로세스에 EOF를 보내는 방법
이 프로그램은 종료하기 위해 stdin end를 기다립니다.
Expect
에서 내가 send
많은 콘텐츠를 보낸 후 프로그램에 "EOF"를 보내는 방법은 무엇입니까?
Expect에는 close
명령이 있지만 SIGHUP도 보내고 더 이상 프로그램 출력을 expect
수 없습니다.
예상 된 프로그램이 실행되는 가상 터미널을 사용하여 (Windows가 아닌 경우) 작동합니다. 즉, 키를 시뮬레이트하기 위해 문자 시퀀스를 전송하여 작업을 수행 할 수 있습니다. 특히 EOF control sequence is done with Ctrl+D은 U + 000004 문자가됩니다. 터미널은 이것을 처리하여 진정한 EOF로 만듭니다.
가 당신이 선호하는 이스케이프 순서에 따라 그것을 쓸 수있는 몇 가지 방법,하지만이 중 하나가 작동합니다
# Hexadecimal-encoded escape
send \x04
# Octal-encoded escape
send \004
# UNICODE escape (also hexadecimal)
send \u0004
때 Expect는 Tcl 8.6을 사용하고 있습니다. 이것들은 모두 같은 바이트 코드를 생성합니다. 당신이 좋아하는 hever.
나는'send \ x04'가 할 것이라고 생각합니다. 그러면 Ctrl + D가 전송됩니다. –