[리눅스 명령어] cat, head, tail

2025. 5. 22. 11:05·linux
728x90
반응형

이번 글에서는 리눅스에서 가장 자주 사용되는 파일 출력 명령어인 cat, head, tail의 주요 기능과 옵션들을 정리한다. 특히 cat 명령어는 단순한 파일 출력뿐 아니라, 파이프와 함께 사용될 때 더욱 강력해지는 도구다.

head, tail은 특정 행만 출력하거나 실시간 로그 모니터링 등에서 자주 활용된다.
CLI 환경에서 파일 내용을 빠르게 확인하고자 할 때 유용하며, 실제로 로그 분석이나 스크립트 작성 시 자주 사용된다.


cat 명령어: 파일 내용을 출력하거나 이어붙이기

cat은 "concatenate"의 줄임말로, 주로 파일 내용을 터미널에 출력하거나 여러 파일을 이어붙이는 데 사용된다.

cat \[옵션\] 파일명
파일 전체 내용을 출력 cat file.txt
-n 각 라인에 번호를 붙여 출력 cat -n file.txt
-b 번호를 붙이되, 빈 줄은 제외 cat -b file.txt
-s 연속된 빈 줄을 한 줄로 압축 cat -s file.txt
> 파일 출력 결과를 다른 파일에 저장 (덮어쓰기) cat file1.txt > output.txt
>> 파일 출력 결과를 다른 파일에 저장 (추가하기) cat file1.txt >> output.txt

예시 1: 여러 파일을 하나로 이어붙이기

cat intro.txt body.txt conclusion.txt > full\_report.txt  

예시 2: 번호를 붙여 출력

cat -n log.txt  

예시 3: 파이프와 함께 사용하기

cat log.txt | grep ERROR

head 명령어: 앞에서부터 몇 줄 출력

head는 파일의 앞쪽 내용 일부만 확인할 때 유용하다. 기본적으로 10줄을 출력한다.

head \[옵션\] 파일명

옵션설명예시

-n 숫자 앞에서부터 N줄 출력 head -n 20 file.txt

예시

head -n 5 readme.md

tail 명령어: 뒤에서부터 몇 줄 출력 또는 실시간 모니터링

로그 확인이나 파일의 최신 변경 내용을 모니터링할 때 자주 사용된다.

tail \[옵션\] 파일명

옵션설명예시

| -f | 파일의 마지막에 추가되는 내용을 실시간으로 출력 | tail -f server.log |
| -n 숫자 | 뒤에서부터 N줄 출력 | tail -n 30 file.txt |

예시 1: 최근 10줄 출력

tail log.txt

예시 2: 실시간 로그 확인

tail -f /var/log/nginx/access.log

실행 방법 및 환경

  • 모든 명령어는 대부분의 리눅스 배포판(Ubuntu, CentOS 등)에서 기본적으로 설치되어 있다.
  • Docker 환경에서도 alpine, ubuntu 기반 컨테이너에 bash 또는 coreutils가 포함되어 있다면 그대로 사용할 수 있다.
  • root 권한이 필요하지 않다.

옵션 요약

cat -n, -b, -s, >, >> 파일 출력, 병합, 저장
head -n 앞에서부터 N줄 확인
tail -n, -f 끝에서부터 확인, 실시간 로그 모니터링

정리

  • cat은 단일 파일 또는 다수의 파일 내용을 출력하거나 병합할 때 유용하다. -n 옵션으로 행 번호를 붙이거나, 파이프와 결합해 다양한 활용이 가능하다.
  • head, tail은 각각 앞/뒤의 일정 줄만 빠르게 확인할 때 사용되며, 특히 tail -f는 실시간 로그 확인에 필수적인 명령어다.
  • 직관적이고 빠르게 사용할 수 있어, 로그 분석, 스크립트 작성, 파일 조작 자동화에 필수적인 도구다.
728x90
반응형

'linux' 카테고리의 다른 글

[리눅스 유저 & 그룹 관리] useradd, usermod, passwd, groupadd  (0) 2025.05.26
[리눅스 기본기] redirect, pipe, grep – 셋만 알아도 터미널이 쉬워진다  (0) 2025.05.23
[리눅스 기본기] vi 에디터 단축키 정리 - 이동, 복사, 삭제, 검색, 대치  (0) 2025.05.22
[리눅스 명령어] find 명령어 완전 정복  (0) 2025.05.22
가상화 (vmware fusion - Mac m1)  (2) 2025.05.22
'linux' 카테고리의 다른 글
  • [리눅스 기본기] redirect, pipe, grep – 셋만 알아도 터미널이 쉬워진다
  • [리눅스 기본기] vi 에디터 단축키 정리 - 이동, 복사, 삭제, 검색, 대치
  • [리눅스 명령어] find 명령어 완전 정복
  • 가상화 (vmware fusion - Mac m1)
highgarden
highgarden
커밋 하나하나가 쌓여 커다란 정원이 되는 중입니다. 하루하루 정성껏 심어가는 중 https://github.com/highgarden7
  • highgarden
    커밋심는 정원
    highgarden
  • 전체
    오늘
    어제
    • 분류 전체보기 (37)
      • ai (1)
      • devops (2)
      • Nest.js (14)
      • linux (14)
      • 네트워크 (6)
      • git (0)
      • aws (0)
      • docker (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github
  • 공지사항

  • 인기 글

  • 태그

    nestjs
    Java
    Linux
    네트워크
    vercel
    Chat GPT
    E2E
    springboot
    IP
    githib action
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
highgarden
[리눅스 명령어] cat, head, tail
상단으로

티스토리툴바