2010-07-28 6 views
1

perl에서 expect를 사용하고 있습니다. 나는 stdout 콘솔에 나타나는 모든 출력을 로그 파일로 리디렉션하여 나중에 디버깅 할 수 있습니다. 현재 내가 사용하고 있습니다 $ exp-> log_stdout (0); 이것을 리디렉션하는 대신 로그 파일로 할 수 있습니까? 그렇다면 어떻게해야할까요? 당신이 Expect의 설명서를 참조하면expect에서 로그 파일로 출력을 리디렉션

답변

2

, 당신은

$object->log_file("filename" | $filehandle | \&coderef | undef) 

모든 문자가 보내거나 파일에 기록되어 생성 된 프로세스로부터받은 파일에 로그인 세션에 대한 정보를 찾을 수 있습니다. 일반적으로는 로그 파일에 추가합니다,하지만 당신은시 파일을 잘라야 "w"의 추가 모드를 전달할 수 있습니다 공개() : LOG_FILE에게 대신 log_stdout 방법을 사용하는 것을 의미

$object->log_file("filename", "w"); 

.

문제가 해결 될 것입니다.

+0

안녕 해결책이 효과적입니다. 파일을 추가 할 수있는 옵션이 있습니다. 나는 함수에서 이것을 사용하고 있습니다. funciton이 호출 될 때마다 이미 존재하는 파일을 덮어 씁니다. 감사합니다 – Raj

+0

@ shayam : Expect의 설명서를 보면, 모든 것을 발견하게 될 것입니다. –

관련 문제