대용량 파일 페이징

LinuxBeginner
지금 연습하기

소개

수천 권의 책이 있는 도서관에서 특정 문장을 찾는다고 생각해 보겠습니다. cat을 사용하면 모든 책을 한꺼번에 바닥에 펼쳐 놓는 것과 같습니다.

Linux 에서는 시스템 로그처럼 매우 큰 파일을 다룰 때 **페이지 표시기 (pager)**라는 도구를 사용합니다. 가장 널리 사용하는 페이지 표시기는 less입니다.

less를 텍스트용 "스트리밍 서비스"라고 생각하면 이해하기 쉽습니다. 영화를 전부 다운로드하는 것처럼 파일 전체를 한꺼번에 불러오는 대신, 한 페이지씩 스트리밍합니다. 따라서 매우 큰 파일도 즉시 열 수 있습니다.

이 차이는 중요합니다. 시스템 관리자는 간단한 출력 명령만으로 편하게 확인하기 어려울 정도로 큰 파일을 자주 다루기 때문입니다. 페이지 표시기는 단순한 편의 기능이 아니라, 많은 양의 텍스트를 제어하면서 확인하기 위한 실용적인 방법입니다.

이 실습에서는 파일을 열고, 내용을 스크롤하고, 키워드를 검색하고, 안전하게 종료하는 방법을 배웁니다.

대용량 파일 열기

system.log라는 이름의 "더미" 로그 파일을 준비해 두었습니다. 이 파일에는 1000 줄이 들어 있습니다. cat을 사용하면 내용이 화면을 빠르게 지나가 버립니다.

먼저 파일이 존재하는지 확인합니다.

ls -lh system.log

이제 less로 파일을 엽니다.

less system.log

이제 명령줄을 벗어나 "Less 인터페이스"에 들어왔습니다.

핵심 개념: 지금은 프로그램 "안에" 들어와 있습니다. 여기서는 ls 같은 일반 명령이 작동하지 않습니다. 현재는 읽기 모드입니다.

이는 터미널을 사용할 때 알아야 하는 중요한 개념입니다. 셸이 일시적으로 다른 프로그램에 제어권을 넘겼고, 이제 키 입력의 의미는 그 프로그램이 결정합니다.

텍스트 스크롤하기

파일을 열었으므로 이제 첫 번째 "페이지"가 화면에 표시됩니다.

less에서는 키보드로 탐색합니다.

  1. 페이지 스크롤: **스페이스바 (Spacebar)**를 누릅니다. 한 번에 한 화면씩 이동합니다.
  2. 한 줄씩 스크롤: Enter 또는 **아래쪽 화살표 키 (Down Arrow)**를 누릅니다. 한 줄씩 이동합니다.
  3. 뒤로 이동: b를 눌러 한 페이지 위로 돌아갑니다.

스페이스바 (Spacebar), b, **화살표 키 (Arrow Keys)**를 사용해 익숙해질 때까지 파일을 탐색해 보세요. 마우스 없이 웹 페이지를 탐색하는 것과 비슷하게 느껴질 것입니다.

Linux 의 많은 텍스트 기반 프로그램도 이와 비슷한 키보드 사용 방식을 따릅니다. 터미널 인터페이스에서 이동하고, 검색하고, 종료하는 방법에 익숙해지면 다양한 도구를 훨씬 편하게 사용할 수 있습니다.

파일 안에서 검색하기

특정 단어를 찾고 있다면 파일을 계속 스크롤하는 것은 번거롭습니다.

less에는 "Ctrl+F"와 비슷한 검색 기능이 내장되어 있습니다.

  1. /(슬래시) 를 입력합니다. 화면 아래쪽에 입력 표시가 나타납니다.
  2. error를 입력하고 Enter를 누릅니다.
/error

화면이 첫 번째 일치 항목으로 이동합니다.

  • 다음 일치 항목: n을 눌러 다음 error로 이동합니다.
  • 이전 일치 항목: N(Shift+n) 을 눌러 이전 항목으로 돌아갑니다.

이 기능을 사용하면 텍스트가 빽빽하게 이어진 내용을 검색 가능한 데이터베이스처럼 다룰 수 있습니다.

이 때문에 최신 시스템에서도 페이지 표시기가 여전히 유용합니다. 터미널 연결 환경에서도 읽기, 탐색, 검색을 효과적으로 함께 사용할 수 있기 때문입니다.

페이지 표시기 종료하기

초보자가 가장 자주 묻는 질문은 "어떻게 종료하나요?"입니다.

여기서는 Ctrl+C가 작동하지 않습니다. Esc도 작동하지 않습니다.

less를 종료하고 명령 프롬프트로 돌아가려면 다음 키를 누릅니다.

**q**를 누릅니다.

파일 보기가 닫히고 다음 프롬프트로 돌아옵니다: labex:~/project$.

기억할 점: Linux 의 뷰어 프로그램에서는 보통 q가 Quit(종료) 를 의미합니다.

이처럼 간단한 규칙은 자주 사용되므로 자연스럽게 익숙해집니다. q로 종료하는 것처럼 반복해서 등장하는 키보드 규칙을 익히는 과정은 터미널 기반 프로그램에 익숙해지는 데 도움이 됩니다.

요약

방금 Linux 도구 모음에서 가장 유용한 도구 중 하나인 less 페이지 표시기를 익혔습니다.

  • 열기: less filename을 실행해 읽기를 시작합니다.
  • 이동: 페이지를 넘길 때는 **스페이스바 (Spacebar)**를 사용하고, 세밀하게 이동할 때는 **화살표 키 (Arrow Keys)**를 사용합니다.
  • 검색: /keyword로 텍스트를 찾고, n으로 다음 일치 항목을 찾습니다.
  • 종료: q를 눌러 종료합니다.

이제 처리하기에 너무 큰 파일은 없습니다. 작은 메모 파일이든 크기가 기가바이트에 달하는 서버 로그든, less를 사용하면 편하게 읽을 수 있습니다.