IT/ETC

[linux]리눅스 head(파일 윗부분부터 출력), tail(파일 마지막부터 출력)

알 수 없는 사용자 2022. 11. 26. 06:31
반응형

목차

    image source:https://unsplash.com/s/photos/linux

    리눅스 head(파일 윗부분부터 출력), tail(파일 마지막부터 출력)

    리눅스에서 파일의 용량이 클 경우 일부만 확인 해야되는 경우가 있다.

    리눅스의 메모리를 체크하지 않은 상태에서 대용량 파일을 vim으로 여는 건 메모리 부하가 크다.

    ex) 대용량 로그파일 등

     

    보통 로그는 보통 용량이 큰 경우가 많기에 vim으로 열기 보다는 몇 부분만 확인을 한다.

    이 때 사용하는 명령어가 head와 tail이다.

    단어만 봐도 head는 앞부분이고 tail은 끝부분이라는 걸 유추해 볼 수 있다.

     

    head😃

    head 명령어 구조는 아래와 같고 기본 출력은 파일 윗부분의 10줄이다.

    head [option] filename1, filename2, ...

    아래 경로에서 Test.java를 head로 출력해보면 아래처럼 표시된다.

    기본 출력은 아래처럼 파일의 위 10줄이 출력된 것을 확인할 수 있다.

    head 옵션 관련은 아래처럼 --help에서 더 확인이 가능하다.

     


    tail(실시간 로그 확인)😎

    보통 로그파일의 실시간 확인에 많이 사용되고 명령어 구조는 아래처럼 head와 비슷하고

    기본 출력값도 파일의 마지막 10줄이다.

    tail [option] filename1, filename2, ...

     

    기본 tail 명령어

    기본 tail 명령어는 아래처럼 파일의 마지막 10번 째만 출력하고 종료된다.

     

    여러 파일의 마지막 10줄이 보고 싶으면 아래처럼 입력한다.

     

    tail -옵션

    tail -f

    보통 로그파일의 실시간 확인을 하는데 많이 사용하는 옵션은 tail -f 파일명이다.

    -f 옵션은 명령어를 종료하지 않고 파일에 새로운 내용이 추가될 경우 내용을 업데이트 해서 계속 출력한다.

    지금 로컬에 로그파일 환경이 없어서 예를 들면 아래와 같다.

    Test.java를 tail -f로 출력할 경우 명령어가 종료되지 않고 마지막 라인에 새로운 내용이 저장되면 계속 마지막 10줄이 업데이트 된다.

    아래는 새로 추가된 마지막 10줄이다.(실시간으로 아래처럼 표시됨)

     

    tail -n

    원하는 라인만 선택해서 보고 싶을 경우 tail -n 라인수를 적으면 됨

    예를 들어 Test.java를 마지막 5줄만 보고 싶으면 아래처럼 입력하면 된다.

     

    tail -c

    보여줄 마지막 바이트 수를 지정할 경우 tail -c 옵션을 준다.

    마지막100바이트만 출력할 경우 아래처럼 명령어를 입력한다.

     

    tail 옵션 관련은 아래처럼 --help에서 더 확인이 가능하다.

     

    출처 : J. deo의 그알정보님 블로그, 2018.09.30, https://sisiblog.tistory.com/218

    반응형