승상의 코딩 블로그

리눅스 파일 출력 명령어 3 - head/tail 본문

Linux (리눅스)

리눅스 파일 출력 명령어 3 - head/tail

양승상 2022. 12. 18. 21:45

 

2022.10.01 - [Linux (리눅스)] - 리눅스 파일 출력 명령어 - cat

2022.10.01 - [Linux (리눅스)] - 리눅스 파일 출력 명령어 2 - less

 

CAT 이 한번에 내용을 터미널에 출력했습니다.

만약 파일 내용이 많을 경우에는, less 명령어를 통해서 한 페이지씩 보는 방법을 사용했습니다.

그렇다면, 파일의 내용을 일부만 출력할 수 있다면 어떨까요?

(파일의 첫 부분에 파일에 대한 설명이 있을 경우에, less 명령어를 통해 들어갔다가 나오는 번거로운 수고를 할 필요가 없을 수도 있습니다. 이 외에도 리다이렉션이나 특정 줄을 읽고 싶을 때도 사용할 수 있습니다.)

 

 

man head / man tail

man head / man tail

이름에서 쉽게 유추할 수 있듯이, head 는 파일의 앞부분을 출력하고 tail 은 파일의 뒷부분을 출력합니다.

 

좌측은 cat, 우측은 head 와 tail

기본적으로 옵션을 주지 않는다면, 10줄 출력을 기본으로 합니다.

(head 는 파일 첫부분 10줄, tail 은 파일 끝부분 10줄입니다)

 

출력줄 수 조절

파일 출력줄 수는 -n 옵션을 통해서 조절할 수 있습니다. 아래의 명령어는 모두 동일한 결과를 나타냅니다. (tail 도 동일합니다)

head -n 5 [FILE]
head -n5 [FILE]
head -5 [FILE]

head -n 옵션

 

tail 의 -f(follow) 를 통한 실시간 로그 확인

프로그램을 개발하면서 로그를 기록할 때, 파일에 로그를 기록하는 경우가 많습니다.

파일을 열어서 로그를 확인하면 파일이 열리는 시점의 기록만 보여줍니다. 그 이후에 로그가 기록될 경우 다시 파일을 열어서 확인해봐야 합니다.

프로그램 에러를 찾기 위해서는, 쌓이는 로그를 실시간으로 확인해야하는 상황이 많이 생깁니다.

이 때, tail -f [로그파일] 을 입력하면, 파일 끝부분에 추가되는 내용이 실시간으로 업데이트 됩니다.

tail -f 옵션

반응형
Comments