tail — 리눅스 기본 명령어
Linux / 리눅스 기본 명령어 / tail.html
파일의 끝 부분(마지막 몇 줄)만 출력하거나 실시간으로 추적하는 명령어.
기본 정보
| 명령어 이름 | tail |
|---|---|
| 한 줄 소개 | 파일의 끝 부분(마지막 몇 줄)만 출력하거나 실시간으로 추적하는 명령어. |
| 제공 | GNU coreutils (모든 Linux 배포판 기본 탑재) |
| 공식 문서 | https://man7.org/linux/man-pages/man1/tail.1.html |
| 지원 운영체제 | Linux, macOS, BSD, WSL |
| 설치 여부 | 기본 탑재 (별도 설치 불필요) |
| 분류 | 리눅스 기본 명령어 (태그: 파일 출력, 실시간 추적, 로그, 리눅스, 기본) |
이 명령어는 무엇인가?
tail은 파일의 끝 부분부터 지정한 줄 수(기본 10줄)만 출력하는 명령어입니다. -f 옵션을 사용하면 파일에 새 내용이 추가될 때마다 실시간으로 출력하므로 로그 모니터링에 필수적입니다.
head가 파일 시작을 보여준다면 tail은 파일 끝을 보여주며, 두 도구를 함께 사용하면 파일 구조를 빠르게 파악할 수 있습니다.
어떤 문제를 해결하는가?
- 긴 로그 파일의 마지막 부분을 확인합니다.
- 실시간으로 기록되는 로그를 모니터링합니다.
- 에러 발생 시 최근 로그를 확인합니다.
- 파일 끝의 결과를 확인합니다.
주요 기능
기본 10줄 출력
파일의 마지막 10줄을 출력합니다.
- 활용 상황: 최근 기록을 빠르게 확인할 때.
- 얻는 결과: 파일 끝의 내용을 확인할 수 있습니다.
- 제한 사항: 파일이 10줄 미만이면 전체가 출력됩니다.
실시간 추적 (-f)
파일에 새 내용이 추가되면 실시간으로 출력합니다.
- 활용 상황: 로그 파일을 실시간 모니터링할 때.
- 얻는 결과: 새 로그가 기록되면 자동으로 표시됩니다.
- 제한 사항: 파일이 삭제·재생성되면 추적을 멈출 수 있습니다.
줄 수 지정 (-n)
-n 옵션으로 출력할 줄 수를 지정합니다.
- 활용 상황: 원하는 줄 수만큼 확인할 때.
- 얻는 결과: 지정한 줄 수만큼 출력됩니다.
- 제한 사항: 0 이하를 지정하면 오류가 발생합니다.
여러 파일 동시 추적
여러 파일의 끝을 동시에 추적합니다.
- 활용 상황: 여러 서비스 로그를 한 화면에서 모니터링할 때.
- 얻는 결과: 모든 파일의 새 내용이 순서대로 표시됩니다.
- 제한 사항: 파일이 많으면 화면이 복잡해집니다.
설치 및 실행
기본 탑재 확인
모든 Linux 배포판에 기본 포함되어 있습니다.
which tail
tail --version
설치 (경량 환경)
일반적으로 이미 설치되어 있습니다.
sudo apt install coreutils # Debian/Ubuntu
실제 사용 예제
기본 출력
파일의 마지막 10줄을 확인합니다.
# 마지막 10줄 출력
tail /var/log/syslog
# 여러 파일
tail file1.txt file2.txt
# 파이프와 함께
ps aux | tail -5
줄 수 지정
원하는 줄 수만큼 출력합니다.
# 마지막 5줄만
tail -n 5 /var/log/syslog
# 마지막 20줄만
tail -20 /var/log/syslog
# 최근 로그 100줄
tail -100 /var/log/nginx/error.log
실시간 로그 모니터링
파일에 추가되는 내용을 실시간으로 봅니다.
# 실시간 추적
tail -f /var/log/syslog
# 여러 로그 동시 추적
tail -f /var/log/nginx/access.log /var/log/nginx/error.log
# 특정 줄 수부터 추적
tail -n 20 -f /var/log/syslog