화면 및 파일로 리디렉션

화면 및 파일로 리디렉션

화면에 인쇄하는 것 외에도 실행한 명령의 모든 출력을 파일로 리디렉션하고 싶습니다.

tee나는 이것이 자동으로 일어나기를 원하며, 매번 그것을 할 필요는 없습니다 .

나는 그것을 시도했지만 exec | tee file작동하지 않았습니다. 어떻게 해야 하나요?

이것은 Bash이므로 그것도 PROMPT_COMMAND사용할 수 있습니다.

답변1

다음을 수행할 수 있습니다.

exec > >(tee logfile) 2>&1

이는 쉘의 출력 및 오류 스트림을 프로세스 교체로 리디렉션하여 >(tee logfile)저장하는 logfile동시에 터미널에도 출력합니다.

사용자 mosvy가 올바르게 지적했듯이아래 댓글에, 모든 프로그램 출력은 마치 파일로 리디렉션되는 것처럼 생성됩니다. 유틸리티가 파일로 출력하는 것과 터미널 장치로 출력하는 것이 다른 경우 출력은 예상한 것과 다릅니다. 터미널이 필요한 일부 프로그램은 전혀 실행되지 않을 수 있습니다.

script파일에 기록하는 대화형 셸을 자체적으로 실행하는 이 유틸리티를 사용할 수도 있습니다 . 설명서를 참조하십시오 script.

관련 정보