터미널에서 tee을 통해 Log를 저장해보자

배경

Ubuntu와 같은 Linux CLI 터미널에서 프로그램을 실행하면 화면에서 출력값을 볼 수 있다. 때때로 이 출력값을 저장하고 싶을 때가 있다. 그렇다면 출력값을 화면으로 보는 동시에 저장도 하고 싶다면 어떻게 해야 할까?

방법

아래와 같은 방법을 사용하면 출력값으 쉽게 파일에 저장할 수 있다. 하지만 터미널 화면에서는 나타났던 결과값이 더 이상 나타나지 않는다. 표준 출력을 output.txt로 돌렸기 때문이다.

echo "hello" > output.txt

터미널 화면에 출력값이 그대로 나타나면서 같은 결과를 파일에 저장하려면 tee를 사용해야 한다. 결과값을 차근차근 검토해야 할 때 사용할 수 있는 단순하지만 유용한 기능이다.

echo "hello" | tee output.txt

python에는 로그 저장을 위해 logging과 같은 모듈들이 구비되어 있다. 하지만 작은 프로젝트를 수행하면서 log까지 신경쓰기는 귀찮다. 이럴 때 단순히 print로 필요한 내용을 출력해 주고 아래와 같이 실행시켜주면 별도의 조치 없이도 로그 파일을 생성할 수 있다.

python my_python_script.py | tee my_log.log

REF

더 자세한 내용은 아래의 멋진 글에 잘 설명되어 있다. 참고하기 바란다.

... ... ... ...
Back