Bash와 함께 netcat을 사용하여 명령 출력을 파일로 보내기

Bash와 함께 netcat을 사용하여 명령 출력을 파일로 보내기

출력을 가져와 변수에 저장하는 방법을 알아야 합니다. 모든 출력을 파일로 보내고 싶지는 않습니다. 기본적으로 보낸 명령의 출력 중 하나만 보내고 싶습니다.

AUTH
AUTH
LIST  <---needs to go to file

시도해 보았지만 read $response작동하지 않습니다.

답변1

$:를 제거해야 합니다.

read response

답변2

nc아니요 expect. 따라서 원격 호스트 출력의 어느 부분이 캡처되는지 제어할 수 없습니다. 전체 출력을 파일로 리디렉션하거나(나중에 필요한 것만 추출하기 위해 awk, sed, 또는 기타 방법을 사용하여 처리할 수 있음) 직접 파이프 (또는 다른 수단)로 파이프한 다음 파일에 쓰거나 저장할 수 있습니다. 쉘 변수( 명령 대체를 통해).perlawk$()

그러나 모듈 또는 , 또는 을 사용 perl하거나 (또는 ​​의 라이브러리) 또는 라이브러리 또는 IMAP 클라이언트 라이브러리와 같은 것을 사용하여 스크립트를 작성하는 것이 거의 확실합니다 .Expect.pmNet::TelnetNet::IMAPpythonpexpectpythonimaplib2expect

이를 통해 원격 호스트(외관상 IMAP)의 관련 포트에 연결하고, 필요한 명령을 실행하고, 응답을 기다리고, 응답에 필요한 모든 작업을 수행할 수 있습니다(일부 응답 저장 포함). 파일 )

귀하의 질문에 태그를 추가했습니다. 태그를 클릭하면 /expect이 사이트에서 관련 질문과 답변 목록을 볼 수 있습니다.expect

관련 정보