카테고리 없음

로그보는법 [ 실시간 로그보기 ] - 리눅스 tail 명령어 사용법

까마귀코딩 2023. 2. 7. 16:49

리눅스에서 tail 명령어는

일반적으로 로그와 같이 시간에 따라 변하는 파일들을 

그랩 grep과 같은 명령어로 조합해서 실시간으로 업데이트 되는

로그를 분석하는데 사용됩니다. 

 

 

tail 명령어 

 

tail 명령어는

파일의 마지막 행을 기준으로

지정한 행 까지의 파일 내용 일부를 출력해주는 명령어 입니다. 

 

기본값으로는 마지막 10줄을 출력하여

주로 tail 은 리눅스에서 오류파일로그실시간으로 확인할때 매우 유용하게 사용 !!

 

 

사용법 !!

 

# 파일 마지막 부분을 출력하는 명령어 

 

tail  옵션  파일명  --> 이렇게 순서인데

 

tail filename.txt

tail -f filename.txt

 

 

tail명령어를 사용하면 해당하는 파일의 마지막 부분을 확인할수 있다 !!!

 

위와같이쓰면 filename.txt 라는 파일의 마지막 10줄을 확인할수 있겠네 !!!

 

 

 

자주 사용하는 옵션  !?!

 

-f 

 : tail 을 종료하지 않고 파일의 업데이트 내용을 실시간으로 출력 

 

-n

 : 파일의 마지막 줄부터 지정한 라인수까지 내용출력 !! [라인 수]

 

-c

 :  바이트 수 : 파일의 마지막 부터 지정한 바이트 만큼의 내용을 출력한다. [바이트 수]

 

-q 

 : 파일의 헤더와 상단의 파일이름을 출력하지 않고 내용만 출력 !!

 

-v

 : 출력하기 전에 파일의 헤더와 이름먼저 출력한 후 파일의 내용을 출력한다. 

 

 

실시간 로그보기 !!

 

tail -f mylog.log | grep 192.168.15.86

 

파이프를 사용해서 다른 명령어를 조합해서 사용하실수도 있습니다. 

대부분 개발자들이 실시간 로그 체크를 할때는 

tail 과 grep 명령어 조합으로 로그파일에서 자신이 원하는 키워드만 추출하고는 한다 !!

 

 

위의 명령어 대로 사용하면 

 

mylog 파일을 실시간으로 액세스 하고 IP주소가 192.168.42.12 인 행만 추출하겠네 !!

 

 

 

여러파일 동시에 표시하기 !!

 

tail mylog1.log mylog2.log

 

tail 명령어의 파일이 여러개를 저렇게 입력하면 각 파일의 마지막 부분을 확인할수 있다 !!!!

 

 

 

 

f: 파일의 마지막 10 라인을 실시간으로 계속출력 

F: 파일 변동시 실시간으로 보여주되 로그파일처럼 특정시간이 지난 후 파일이 변하게 되면 

새로운 파일을 오픈하여 보여줌 ( 다시 명령을 실행할 필요가 없음 )

n: n만큼의 라인을 출력

n+n : 마지막 줄이 아니라 첫번째 줄부터 시작해 n번째 라인 이후부터 출력

 

--byte=n : n바이트 만큼의 내용을 출력 

 

여기서 n은 숫자이다 !

 

[예제]

 

tail -n 20 kkamagui-ks.cfg

kkamagui-ks.cfg 파일의

마지막부터 20줄까지를 출력한다. 

 

 

tail -n +20 kkamagui-ks.cfg

kkamagui-ks.cfg 파일의

20줄 이후를 출력한다. 

 

 

tail -f /var/log/messages

/var/log/messages 파일을 실시간으로 화면에 출력한다 !

( log 모니터링에 사용된다 )