DATA 전문가로 가는 길

[Unix/Linux] 실시간 로그 파일 확인 후 종료 하는 방법(ending tail -f) 본문

OS/Fundamental

[Unix/Linux] 실시간 로그 파일 확인 후 종료 하는 방법(ending tail -f)

EstenPark 2016. 12. 16. 14:41

쉘 스크립트를 만들 때 로그 파일에서 정상 가동 되는 로그를 보고 다음 스탭으로 넘어가야 할 경우가 많습니다. 그럴 때 해당 로그를 실시간으로 보고 있다가 특정 문자열이 발생되면 종료하는 방법 입니다.


tail -f [log file]


위와 같은 명령어를 이용해서 실시간으로 로그를 볼 수 있지만, 안타까운 점은 종료 시점이 없이 계속 보기 때문에 사용자가 Ctrl+C를 누르기 전까지는 로그 내용이 올라올 것입니다. 


./mariadb_db.sh start; 
         tail /usr/local/log/mariadb.log -n0 -F | while read line; do
            if [[ $line =~ 'DB Started Completely' ]]; then
                    pkill -9 -P $$ tail
            fi
    done;


수행하게 되면 로그 내용은 보여주지 않고 계속 보고 있다가 "DB Started Completely" 문구를 발견하게 되면 종료 합니다.


아주 간간하게 해볼 수 있는 방법입니다.

Comments