Linux / 명령어 / less - 긴 파일을 검색하며 페이지 단위로 보기

less는 긴 텍스트를 한 화면씩 탐색하는 대화형 페이저(pager)입니다. 앞뒤 이동, 검색, 줄 번호 이동을 지원하고 파일 전체를 화면에 먼저 출력하지 않아 로그와 매뉴얼을 읽기에 좋습니다.

이 글에서는 less의 기본 문법과 주요 옵션, 실제 사용 예제, 관련 명령과의 차이, 사용할 때 주의할 점을 설명합니다.

less 명령어란?

파일이나 표준 입력을 전용 화면에서 보여 주며 읽는 동안 원본을 수정하지 않습니다. 실행 후 키보드 명령으로 이동하고 q로 종료합니다. 옵션과 키 동작은 배포판에 설치된 less 버전에 따라 달라질 수 있습니다.

기본 문법

less [옵션] [파일 ...]

옵션과 세부 동작은 구현과 버전에 따라 달라질 수 있습니다. 현재 시스템에서는 less --help와 man less으로 설치된 명령의 설명을 확인하세요.

less 기본 사용법

파일 열고 이동하기

Space는 다음 화면, b는 이전 화면, 위·아래 방향키는 줄 단위 이동, g와 G는 처음과 끝으로 이동합니다.

less system.log

내용 검색하기

실행 중 /문자열은 아래 방향 검색, ?문자열은 위 방향 검색입니다. n과 N으로 다음·이전 일치로 이동합니다.

less /var/log/messages

명령 출력을 페이지로 보기

긴 출력은 파이프로 전달합니다. 색상 코드를 유지하려면 생산 명령과 less 옵션을 함께 조정해야 합니다.

journalctl -b | less

실행하면 보이는 화면

less sample.txt는 파일 내용을 페이지 화면으로 보여줍니다. 일반적인 표준 출력 블록처럼 끝까지 한 번에 인쇄하지 않고 키 입력을 기다립니다.

less sample.txt

파일 끝까지 이동하면 화면 아래에 (END)가 표시될 수 있습니다. Space는 다음 화면, b는 이전 화면, /단어는 검색, q는 종료입니다. 상태 줄과 색상은 설정·터미널에 따라 달라집니다.

주요 옵션

옵션 설명
-N 각 줄의 줄 번호를 표시합니다.
-S 긴 줄을 접지 않고 가로로 잘라 보이며 좌우 이동할 수 있게 합니다.
-i 검색어가 소문자로만 구성되면 대소문자를 무시합니다.
-I 검색에서 항상 대소문자를 무시합니다.
-R 일부 ANSI 색상 제어 시퀀스를 화면에 반영합니다.
+F 파일 끝을 따라가는 모드로 시작합니다.

실전 활용 예제

줄 번호와 긴 줄 확인하기

설정 파일이나 표 형태 로그는 줄 번호를 표시하고 자동 줄바꿈을 끄면 읽기 쉽습니다.

less -NS access.log

파일 끝의 새 내용 따라가기

+F 상태에서 새 내용을 기다리며, Ctrl+C로 일반 탐색 모드로 돌아온 뒤 검색할 수 있습니다.

less +F application.log

색상 있는 출력 읽기

신뢰할 수 있는 출력의 색상만 유지하고, 제어 시퀀스 처리 범위가 더 넓은 옵션은 보안 영향을 이해한 뒤 사용합니다.

grep --color=always -n 'failed' app.log | less -R

less와 관련 명령 비교

명령 주요 역할 적합한 상황
less 양방향 탐색·검색 긴 파일과 명령 출력
more 기본 페이지 이동 단순하고 널리 설치된 환경
cat 전체 내용 즉시 출력 짧은 파일
tail -f 끝부분 실시간 추적 새 로그 감시

사용할 때 주의할 점

키 명령과 셸 명령을 구분합니다

less 안에서 입력하는 /, g, q는 셸 명령이 아닙니다.

제어 시퀀스를 무조건 허용하지 않습니다

출처를 신뢰할 수 없는 파일에서는 터미널 제어 문자를 폭넓게 해석하는 설정을 피합니다.

회전되는 로그를 주의합니다

로그 로테이션 중 파일이 교체되면 추적 결과가 기대와 달라질 수 있어 서비스 전용 로그 도구가 더 적합할 수 있습니다.

FAQ

less에서 종료하려면 어떻게 하나요?

q를 누릅니다.

다음 검색 결과로 이동하려면 어떻게 하나요?

n은 같은 방향의 다음 일치, N은 반대 방향의 일치로 이동합니다.

긴 줄이 자동으로 접히지 않게 하려면요?

less -S 파일을 사용하고 좌우 방향키로 이동합니다.

less는 파일 전체를 메모리에 올리나요?

일반적으로 필요한 부분을 읽으며 탐색하도록 설계되어 큰 파일을 다루기에 유리하지만 입력 종류와 기능에 따라 임시 저장이 사용될 수 있습니다.

관련 글과 공식 문서

같은 카테고리의 다른 글
Linux / 명령어 / time - 명령 실행 시간 측정

Linux / 명령어 / time - 명령 실행 시간 측정

Linux time 명령어로 명령과 파이프라인의 실행 시간 및 자원 사용량을 측정하는 방법을 설명합니다. Bash 예약어와 GNU /usr/bin/time의 차이, 출력 저장과 정확한 비교 방법을 정리합니다.

Linux / 명령어 / uname - 커널과 시스템 아키텍처 확인

Linux / 명령어 / uname - 커널과 시스템 아키텍처 확인

Linux uname 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux 강좌 / 터미널과 셸 시작하기 - 명령어 구조와 도움말 읽기

Linux 강좌 / 터미널과 셸 시작하기 - 명령어 구조와 도움말 읽기

터미널과 셸의 차이부터 명령어·옵션·인수의 구조, 실행 결과 읽기, Bash 도움말 찾기까지 실습으로 익힙니다.

Linux / 명령어 / ssh - 암호화된 원격 접속과 명령 실행

Linux / 명령어 / ssh - 암호화된 원격 접속과 명령 실행

Linux ssh 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux / 명령어 / uniq - 인접한 중복 행 정리

Linux / 명령어 / uniq - 인접한 중복 행 정리

Linux uniq 명령어의 기본 문법과 실제 사용 예제를 설명합니다. 주요 옵션과 결과를 해석할 때 주의할 점을 확인할 수 있습니다.

Linux / 명령어 / truncate - 파일 크기 줄이기와 늘리기

Linux / 명령어 / truncate - 파일 크기 줄이기와 늘리기

Linux truncate 명령어로 파일 크기를 지정하거나 늘리고 줄이는 방법을 설명합니다. 희소 파일, 상대 크기 조정, 기준 파일과 같은 크기로 맞추는 방법 및 데이터 손실 주의점을 알아봅니다.

Linux / 명령어 / lsblk - 디스크·파티션 구조와 마운트 지점 확인

Linux / 명령어 / lsblk - 디스크·파티션 구조와 마운트 지점 확인

Linux lsblk 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.

Linux 강좌 / 현재 위치 확인하고 이동하기 - pwd, ls, cd, tree

Linux 강좌 / 현재 위치 확인하고 이동하기 - pwd, ls, cd, tree

pwd, ls, cd, tree를 연결해 현재 위치를 확인하고 디렉터리를 탐색합니다. 절대·상대 경로의 차이와 안전하게 돌아오는 방법도 실습합니다.

Linux / 명령어 / cp - 파일과 디렉터리 복사

Linux / 명령어 / cp - 파일과 디렉터리 복사

Linux cp 명령어로 파일과 디렉터리를 복사하는 방법을 설명합니다. 덮어쓰기 제어, 속성 보존, 심볼릭 링크, 희소 파일과 안전한 복사 옵션을 함께 정리합니다.

Linux / 명령어 / scp - SSH로 로컬·원격 파일 복사

Linux / 명령어 / scp - SSH로 로컬·원격 파일 복사

Linux scp 명령어의 기능과 기본 문법을 설명합니다. 실제 사용 예제, 주요 옵션과 작업 전 확인할 점을 알아봅니다.