표준 입력(예: 텔넷)을 허용하는 대화형 터미널 프로그램이 있습니다.
상호작용하기 전에 다음과 같은 입력을 보내고 싶습니다.
echo "Hello" | telnet somewhere 123
그러나 이것은 단지 Hello
텔넷을 보내고 종료할 뿐입니다. 텔넷을 활성 상태로 유지하고 입력을 텔넷으로 라우팅하려면 어떻게 해야 합니까?
답변1
일단 시작하면 텔넷의 STDIN이 바인딩되는 것을 변경할 수 없지만 간단한 에코를 여러 작업을 수행하는 것으로 바꿀 수 있으며 두 번째 작업을 "사용자 입력을 대상에 복사"로 설정할 수 있습니다.
{ echo "hello"; cat; } | telnet somewhere 123
물론, cat을 사용자로부터 복사하여 텔넷으로 보낼 내용으로 대체할 수 있습니다.
이는 여전히 프로세스에 입력하는 것과는 다르다는 점을 명심하세요. TTY/PTY가 아닌 STDIN으로 파이프했기 때문에 텔넷은 입력한 비밀번호를 숨길 수 없습니다.