less
is a
terminal pager program on
Unix
Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
,
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
, and
Unix-like
A Unix-like (sometimes referred to as UN*X, *nix or *NIX) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Uni ...
systems used to view (but not change) the contents of a
text file
A text file (sometimes spelled textfile; an old alternative name is flat file) is a kind of computer file that is structured as a sequence of lines of electronic text. A text file exists stored as data within a computer file system.
In ope ...
one screen at a time. It is similar to , but has the extended capability of allowing both forward and backward navigation through the file. Unlike most Unix text editors/viewers, does not need to read the entire file before starting, allowing for immediate viewing regardless of file size.
History
Mark Nudelman initially wrote
less
during 1983–85, in the need of a version of
more
able to do backward scrolling of the displayed text. The name came from the joke of doing "backwards more." Originally,
less
was developed for Unix, but it has been ported to a number of other operating systems, including
MS-DOS
MS-DOS ( ; acronym for Microsoft Disk Operating System, also known as Microsoft DOS) is an operating system for x86-based personal computers mostly developed by Microsoft. Collectively, MS-DOS, its rebranding as IBM PC DOS, and a few op ...
,
Microsoft Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
OS/2
OS/2 is a Proprietary software, proprietary computer operating system for x86 and PowerPC based personal computers. It was created and initially developed jointly by IBM and Microsoft, under the leadership of IBM software designer Ed Iacobucci, ...
, and
OS-9
OS-9 is a family of real-time, process-based, multitasking, multi-user operating systems, developed in the 1980s, originally by Microware Systems Corporation for the Motorola 6809 microprocessor. It was purchased by Radisys Corp in 2001, a ...
, as well as
Unix-like
A Unix-like (sometimes referred to as UN*X, *nix or *NIX) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Uni ...
systems such as
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
. It is still maintained today by Nudelman.
To help remember the difference between
less
and
more
, a common joke is to say, "," implying that
less
has greater functionality than . A similar saying is that "
less
is
more
, more or less".
Usage
can be invoked with options to change its behaviour, for example, the number of lines to display on the screen. A few options vary depending on the operating system. While is displaying the file, various commands can be used to navigate through the file. These commands are based on those used by both and . It is also possible to search for character patterns in the file.
By default, displays the contents of the file to the
standard output Standard may refer to:
Symbols
* Colours, standards and guidons, kinds of military signs
* Standard (emblem), a type of a large symbol or emblem used for identification
Norms, conventions or requirements
* Standard (metrology), an object t ...
(one screen at a time). If the file name argument is omitted, it displays the contents from
standard input (usually the output of another command through a
pipe). If the output is redirected to anything other than a
terminal, for example a pipe to another command, behaves like .
The "lesspipe" extension can automatically determine file types such as
PDF
Portable document format (PDF), standardized as ISO 32000, is a file format developed by Adobe Inc., Adobe in 1992 to present documents, including text formatting and images, in a manner independent of application software, computer hardware, ...
, multimedia, and
compressed archives, and automatically determines which program to launch display the file's information with, such as text from a PDF file, metadata of photos, lists of files in a compressed archive, and content of a single file in a compressed archive.
The command-
syntax
In linguistics, syntax ( ) is the study of how words and morphemes combine to form larger units such as phrases and sentences. Central concerns of syntax include word order, grammatical relations, hierarchical sentence structure (constituenc ...
is:
less
ptions ile_name..
Frequently used options
*
-g
: Highlight just the current match of any searched string.
*
-i
: Search case-insensitively.
*
-m
: Show more detailed prompt, including file position.
*
-N
: Show line numbers (useful for viewing
source code
In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer.
Since a computer, at base, only ...
).
*
-x3
: Set tabstops (the number of columns per hard tab character) to the specified number (3, in this example) (useful for viewing
source code
In computing, source code, or simply code or source, is a plain text computer program written in a programming language. A programmer writes the human readable source code to control the behavior of a computer.
Since a computer, at base, only ...
).
*
-S
: Disable line wrapping ("chop long lines"). Long lines can be seen by side-scrolling.
*
-X
: Leave file contents on screen when less exits.
*
-?
: Show help.
*
--follow-name
: Follow mode, for log files that get replaced while being viewed.
Frequently used commands
Examples
less -M readme.txt # Read "readme.txt"
less +F /var/log/mail.log # Follow mode for log
file * , less # Easier file analysis
less -I -p void *.c # Case insensitive search for "void" in all .c files
Memory considerations
The
--buffers=n
and
--auto-buffers
options control how much memory less may use to buffer inputs. This is most relevant when less is directly accessing a named file that is modified or deleted while less is still running, and when less is receiving data from a pipe and the data can not be randomly accessed or regenerated. On the other hand, unlimited buffering means that less will request as much memory as it is fed data, which could drive the system into using virtual memory and swapping a lot of data between RAM and disks (dramatically slowing system performance for most applications on the host), or even further into memory exhaustion where any application on the host requesting memory may have that request denied, or may crash when attempting to access memory that the OS promised but can't find when the application actually attempts to use it and a page-fault occurs.
See also
*
more (command)
*
most (Unix)
most is a terminal pager program on Unix, OpenVMS, MS-DOS, Windows and Unix-like systems used to view (but not change) the contents of a text file one screen at a time. Programs of this sort are called ''pagers''. It is similar to more, but ha ...
*
pg (Unix)
References
External links
Manual page on freebsd.orgEntry in Free Software Directory
{{Unix commands
GNU Project software
Terminal pagers