{{위키데이터 속성 추적}}
{{소문자}}
{{소프트웨어 정보
| name = less
| logo = 
| screenshot = Less.jpg
| screenshot size = 200px
| caption = [[xterm|x-terminal]]의 <code>less</code> 출력
| developer = Mark Nudelman
| released = 1984년<ref>https://groups.google.com/d/msg/net.sources/GikfOBWCl0s/agdI4hW2ix8J version 23</ref>
| latest release version = 661<ref>{{웹 인용
 | url         = https://www.greenwoodsoftware.com/less/
 | title       = less-661 has been released for general use.
 | last        = 
 | first       = 
 | date        = 2024-06-30
 | website     = Less
 | publisher   = 
 | access-date = 2024-07-01
 | quote       = 
}}</ref>
| latest release date = {{시작 날짜|2024|06|30|df=yes}}
| latest preview version = 548
| latest preview date = {{시작 날짜|2019|02|08|df=yes}}
| programming language = [[C 언어|C]]
| operating system = [[크로스 플랫폼]]
| genre = 시스템 유틸리티
| license = [[멀티 라이선스|듀얼 라이선스]] - [[GNU 프로젝트|GNU]] [[GNU GPL|GPLv3]] 및 커스텀 [[BSD 라이선스|BSD-스타일]] 라이선스
| website = {{url|https://www.greenwoodsoftware.com/less/}}<br /> {{url|https://www.gnu.org/software/less/}}
}}
'''less'''(레스)는 [[유닉스]]나 [[마이크로소프트 윈도우|윈도우]], [[유닉스 계열]] 시스템에서 텍스트 파일을 한 번에 한 화면씩 보여주는 터미널 페이저(terminal pager)이다. less는 기능적으로 more와 유사하나 파일의 앞쪽과 뒤쪽으로 이동할 수 있는 more의 개량형 명령어라고 볼 수 있다. 대부분의 유닉스의 문서 편집기나 뷰어와는 다르게 less는 구동 전에 전체 파일을 읽지 않기 때문에 큰 용량의 파일을 더 빨리 읽을 수 있다.

== 역사 ==
<code>less</code>는 1983~85년에 [[Mark Nudelman]]에 의해 more 명령어<code>[[More (명령어)|more]]</code>에 텍스트의 뒤로 스크롤하는 것을 가능하게 하기 위해 만들어졌다. less라는 이름은 "뒤로도 more"라는 이유로 재미있게 지어졌다.<code>less</code>는 현재 [[GNU]] 프로젝트의 한 부분으로 대부분의 유닉스 계열 시스템에 사용되고 있다.

== 사용법 ==
<code>less</code>가 구동되는 동안 그것의 옵션을 통해 구동 환경을 변경시킬 수 있다. 예를 들면, 옵션 <code>-n</code> 또는 <code>--line-number</code> 을 통해 한 페이지에 출력되는 줄 수를 조절할 수 있다. <code>less</code>가 파일 내용을 보여주는 동안 여러 가지 명령어들을 사용할 수 있다. 이러한 명령어들은 <code>more</code>와 <code>[[vi]]</code>.에도 동일하게 적용된다. 또한 텍스트 파일에 있는 문자열도 찾을 수 있다.

결론적으로, <code>less</code>는 파일 내용을 [[표준 출력]](한 번에 한 화면씩) 해준다. 만약 파일 이름이 생략된다면 less는 표준 입력(보통 파이프를 통한 다른 명령어들의 출력)의 내용을 표준 출력 해준다. 만약 출력이 터미널 이외의 것으로 다시 지정되면 예를 들어 다른 명령의 [[파이프라인 (유닉스)|pipe]]), <code>less</code>는 <code>[[cat (유닉스)|cat]]</code>과 같은 역할을 수행한다.

명령어 용법<ref>{{웹 인용|url=http://man7.org/linux/man-pages/man1/less.1.html}}</ref>:

 less ''[options]'' ''file_name''

=== 자주 사용되는 명령어 ===
* {{키눌림|화살표}}/{{키눌림|Page Up}}/{{키눌림|Page Down}}/{{키눌림|Home}}/{{키눌림|End}}: 이동.
* {{키눌림|Space bar}}: 다음 페이지로 이동.
* '''b''': 전 페이지로 이동.
* ''n'''''g''': ''n''줄만큼 이동. 기본적으로 파일의 시작.
* ''n'''''G''': ''n''줄만큼 이동. 기본적으로 파일의 끝.
* '''/'''''pattern'': 문자 패턴을 찾는다. 정규 표현이 사용될 수 있다.
* '''n''': 일치하는 다음 문자열로 이동 (검색 후에 사용).
* '''N''': 일치하는 바로 전 문자열로 이동.
* '''m'''''letter'': 현재의 문자의 위치를 기억.
* '''<nowiki>'</nowiki>'''''letter'': 기억한 위치로 이동
* '''<nowiki>'^</nowiki>''' or '''g''': 파일의 시작으로 이동.
* '''<nowiki>'$</nowiki>''' or '''G''': 파일의 끝으로 이동.
* '''s''': 현재 내용을 저장
* '''=''': 파일 정보.
* '''F''': 파일의 정보를 마지막 내용까지 지속적으로 읽는다. logs watching에 효과적이다. 이 모드를 종료하려면 {{키눌림|Ctrl}}+{{키눌림|c}}를 누른다.
* '''h''': 도움말.
* '''q''': 종료

=== 자주 사용되는 옵션 ===
* <code>-?</code>: less에서 사용할 수 있는 명령들에 대한 도움말을 제공한다. 이 옵션이 사용되면 다른 인수는 무시되고, 도움말 화면을 보여준다.
* <code>-a</code>: 마지막 라인이 화면에 출력되고 나서 탐색을 시작한다.
* <code>-c</code>: 필요할 때 전체 화면은 다시 갱신한다.
* <code>-e</code>: 두 번째로 파일의 끝에 도달하면 자동적으로 종료한다.
* <code>-E</code>: 파일의 끝에 도달하기만 하면 자동적으로 종료한다.
* <code>-i</code>: 대소문자를 구분하지 않고 탐색한다.
* <code>-N</code>: 행 번호를 추가한다.
* <code>-q</code>: 특정 오류가 발생하지 않으면 아무 소리도 내지 않고 조용히 동작한다.
* <code>-Q</code>: 결코 아무 소리도 내지 않는다.
* <code>-s</code>: 연속되는 공백 라인은 한 행의 공백으로 처리한다.
* <code>-x숫자</code>: 수치를 지정해서 탭 간격을 조정한다. 기본값은 8이다.

== 사용 예 ==
<syntaxhighlight lang="bash">
less -M readme.txt
file * | less
grep -i void *.c | less -I -p void
</syntaxhighlight>

== 같이 보기 ==
* [[More (명령어)]]
== 각주 ==
{{각주}}

== 외부 링크 ==
{{위키공용분류}}
* [http://www.greenwoodsoftware.com/less/ 공식 홈페이지]
* [http://www.linuxmanpages.com/man1/ less 관련 개인 홈페이지]

=== <code>less</code>의 변화 ===
* [[맥 오에스 텐]]에서 사용되는 [http://aqualess.sourceforge.net/ AquaLess]

{{유닉스 명령어}}

[[분류:GNU 프로젝트 소프트웨어]]
[[분류:터미널 페이저]]