Linux 강좌 / 파일 내용 읽기 - cat, less, more, head, tail
리눅스에서 파일 내용을 읽을 때는 짧은 파일에 cat, 긴 파일을 탐색할 때 less나 more, 처음 또는 마지막 몇 줄만 확인할 때 head와 tail을 사용합니다. 파일을 화면에 출력하는 것과 편집하는 것은 다릅니다. 이 강좌에서는 같은 실습 파일을 다섯 명령으로 살펴보며 적절한 선택 기준을 익힙니다.
안전한 실습 파일 준비하기
아래 명령은 Bash에서 일반 사용자로 실행합니다. 홈 디렉터리에 linux-course-10-practice가 이미 있다면 기존 자료를 건드리지 말고 다른 이름을 정하세요. mkdir가 실패했는데 다음 명령을 계속 실행하면 기존 파일을 덮어쓸 수 있습니다.
mkdir ~/linux-course-10-practice cd ~/linux-course-10-practice pwd
pwd가 새 실습 디렉터리를 가리키는지 확인한 뒤 다음 명령으로 다섯 줄의 텍스트 파일을 만듭니다. printf의 \n은 줄바꿈이며, >는 표준 출력을 파일에 저장합니다. >는 대상 파일이 이미 있으면 내용을 덮어쓰므로 새 디렉터리에서만 실행하세요.
printf 'alpha\nbeta\ngamma\ndelta\nepsilon\n' > sample.txt
짧은 파일을 한꺼번에 읽기: cat
cat은 파일 내용을 표준 출력으로 보내므로 작은 텍스트 파일을 바로 확인하기 좋습니다. 방금 만든 파일에 실행하면 입력한 다섯 줄이 순서대로 나타납니다.
cat sample.txt
출력 예시:
alpha beta gamma delta epsilon
cat은 페이지를 나누거나 파일을 편집하지 않습니다. 매우 긴 파일에서는 내용이 화면을 빠르게 지나갈 수 있으므로 그럴 때는 less를 사용하세요. 텍스트가 아닌 바이너리 파일을 터미널에 무작정 출력하는 것도 피하는 편이 좋습니다.
긴 파일을 탐색하기: less와 more
less는 파일을 한 화면씩 보면서 위아래로 이동하고 검색할 수 있는 페이저입니다. less sample.txt를 실행한 뒤 Space로 다음 화면, b로 이전 화면, /gamma와 Enter로 검색, n으로 다음 일치 항목을 확인할 수 있습니다. 종료할 때는 q를 누릅니다.
less sample.txt
실습 파일은 한 화면보다 짧을 수 있어 페이지 이동의 효과가 잘 보이지 않습니다. 실제로 긴 로그나 설정 파일을 읽을 때 차이를 확인할 수 있습니다. less 안에서 누르는 키는 셸 명령이 아니므로 위 코드 블록에 이어 입력하지 마세요.
more도 긴 텍스트를 화면 단위로 보여 줍니다. 기본적인 다음 화면 이동은 Space, 종료는 q입니다. 구현과 환경에 따라 탐색 기능이 다르므로 앞뒤 이동과 검색이 필요하다면 보통 less가 편리합니다.
more sample.txt
앞부분과 뒷부분만 확인하기: head와 tail
파일 전체가 아니라 시작 부분만 필요하면 head, 끝부분만 필요하면 tail을 사용합니다. GNU 도구에서 -n 2는 두 줄을 뜻합니다.
head -n 2 sample.txt tail -n 2 sample.txt
첫 명령의 출력은 alpha와 beta, 둘째 명령의 출력은 delta와 epsilon입니다.
alpha beta
delta epsilon
tail -f 파일은 파일 끝을 보여 준 뒤 새로 추가되는 내용을 계속 따라갑니다. 운영 중인 로그를 볼 때 유용하지만 화면이 계속 열려 있으므로 Ctrl+C로 종료해야 합니다. 로그가 교체·회전되는 환경에서는 GNU tail -F가 파일 이름을 다시 따라가는 데 적합할 수 있습니다. 파일 접근 권한이 없다면 내용을 읽을 수 없습니다.
상황별 선택과 확인할 점
| 필요한 작업 | 명령 | 이유 |
|---|---|---|
| 짧은 파일 전체 확인 | cat |
내용을 곧바로 출력 |
| 긴 파일 탐색·검색 | less |
화면 이동과 검색 |
| 간단한 페이지 단위 보기 | more |
기본적인 화면 단위 출력 |
| 처음 몇 줄 확인 | head -n |
파일 앞부분만 출력 |
| 마지막 몇 줄·추가 내용 확인 | tail -n, tail -f |
끝부분 또는 이후 추가분 확인 |
파일 이름만 보고 텍스트라고 확신할 수 없다면 앞선 파일 종류 강좌에서 다룬 file로 형식을 확인하세요. 특히 터미널 제어 문자가 섞인 파일은 화면 표시가 예상과 다를 수 있습니다. 이 강좌의 모든 읽기 명령은 원본 내용을 수정하지 않지만, 실습 파일을 만든 >는 파일을 덮어쓸 수 있다는 차이를 기억하세요.
공식 문서
GNU Coreutils 매뉴얼의 cat·head·tail 항목과 Bash 리디렉션 문서에서 명령과 파일 저장 동작을 확인할 수 있습니다. less·more의 키 동작은 설치된 시스템의 man less, man more도 참고하세요.









