Linux less Command
Learn Linux less Command with example
Published
- Linux less Command
- less Command Syntax
- less Command Example
- less -N to Show Line Numbers
- less -X cleared from the screen
- less +F Watch the File Contents for Changes
- less Command in Linux (Documentation)
Linux less Command
In Linux we use “less” command line utility that displays the contents of a file or a command output, one page at a time.
The less command is mostly used for opening large files because less doesn’t read the entire file which results in much faster load times.
less Command Syntax
~$ less [OPTIONS] filename
less Command Example
~$ less /usr/share/common-licenses/Apache-2.0
To quit less and go back to the command line press q.
- To go forward to the next page press either the f key or Space bar.
- Press either the Down arrow or Enter to scroll forward by one line and Up arrow scroll backward by one line.
- To go back to the previous page hit the b key. Move up for a specific number of lines, by typing the number followed by the b key.
- When the end of the file is reached, the string (END) is shown at the bottom of the screen.
less -N to Show Line Numbers
If you want less to shows line numbers launch the program with the -N option:
~$ less -N filename
less -X cleared from the screen
By default, when less command exits, it cleared the contents from the screen. To leave file contents as it is on screen, use the -X option.
~$ less -X filename
less +F Watch the File Contents for Changes
less Command +F option tells less to watch the file contents for changes. This can be useful when opening log files.
~$ less +F /var/log/messages
less +F behaves pretty much the same as tail -f.
Command | Action |
Down arrow - Enter - e - or j | Move forward one line. |
Up arrow - y or k | Move backward one line. |
Space bar or f | Move Forward one page. |
b | Move Backward one page. |
G | Go to the last line in the file. |
g | Go to the first line in the file. |
h | Display help. |
Ng | Go to the N-th line in the file. |
n | Repeat previous search. |
N | Repeat previous search in reverse direction. |
p | Go to the beginning of fthe ile. |
Np | Go to N percent into file. |
/pattern | Search forward for matching patterns. |
?pattern | Search backward for matching patterns. |
q | Exit less. |
less Command in Linux (Documentation)
NAME
less - opposite of more
SYNOPSIS
less -?
less --help
less -V
less --version
less [-[+]aABcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
[-b space] [-h lines] [-j line] [-k keyfile]
[-{oO} logfile] [-p pattern] [-P prompt] [-t tag]
[-T tagsfile] [-x tab,...] [-y lines] [-[z] lines]
[-# shift] [+[+]cmd] [--] [filename]...
(See the OPTIONS section for alternate option syntax with long option names.)
DESCRIPTION
Less is a program similar to more (1), but it has many more features. Less
does not have to read the entire input file before starting, so with large in‐
put files it starts up faster than text editors like vi (1). Less uses term‐
cap (or terminfo on some systems), so it can run on a variety of terminals.
There is even limited support for hardcopy terminals. (On a hardcopy termi‐
nal, lines which should be printed at the top of the screen are prefixed with
a caret.)
Commands are based on both more and vi. Commands may be preceded by a decimal
number, called N in the descriptions below. The number is used by some com‐
mands, as indicated.
COMMANDS
In the following descriptions, ^X means control-X. ESC stands for the ESCAPE
key; for example ESC-v means the two character sequence "ESCAPE", then "v".
h or H Help: display a summary of these commands. If you forget all the other
commands, remember this one.
SPACE or ^V or f or ^F
Scroll forward N lines, default one window (see option -z below). If N
is more than the screen size, only the final screenful is displayed.
Warning: some systems use ^V as a special literalization character.
z Like SPACE, but if N is specified, it becomes the new window size.
ESC-SPACE
Like SPACE, but scrolls a full screenful, even if it reaches end-of-
file in the process.
ENTER or RETURN or ^N or e or ^E or j or ^J
Scroll forward N lines, default 1. The entire N lines are displayed,
even if N is more than the screen size.
d or ^D
Scroll forward N lines, default one half of the screen size. If N is
specified, it becomes the new default for subsequent d and u commands.
b or ^B or ESC-v
Scroll backward N lines, default one window (see option -z below). If
N is more than the screen size, only the final screenful is displayed.
w Like ESC-v, but if N is specified, it becomes the new window size.
y or ^Y or ^P or k or ^K
Scroll backward N lines, default 1. The entire N lines are displayed,
even if N is more than the screen size. Warning: some systems use ^Y
as a special job control character.
u or ^U
Scroll backward N lines, default one half of the screen size. If N is
specified, it becomes the new default for subsequent d and u commands.
J Like j, but continues to scroll beyond the end of the file.
K or Y Like k, but continues to scroll beyond the beginning of the file.
ESC-) or RIGHTARROW
Scroll horizontally right N characters, default half the screen width
(see the -# option). If a number N is specified, it becomes the de‐
fault for future RIGHTARROW and LEFTARROW commands. While the text is
scrolled, it acts as though the -S option (chop lines) were in effect.
ESC-( or LEFTARROW
Scroll horizontally left N characters, default half the screen width
(see the -# option). If a number N is specified, it becomes the de‐
fault for future RIGHTARROW and LEFTARROW commands.
ESC-} or ^RIGHTARROW
Scroll horizontally right to show the end of the longest displayed
line.
ESC-{ or ^LEFTARROW
Scroll horizontally left back to the first column.
r or ^R or ^L
Repaint the screen.
R Repaint the screen, discarding any buffered input. Useful if the file
is changing while it is being viewed.
F Scroll forward, and keep trying to read when the end of file is
reached. Normally this command would be used when already at the end
of the file. It is a way to monitor the tail of a file which is grow‐
ing while it is being viewed. (The behavior is similar to the "tail
-f" command.)
ESC-F Like F, but as soon as a line is found which matches the last search
pattern, the terminal bell is rung and forward scrolling stops.
g or < or ESC-<
Go to line N in the file, default 1 (beginning of file). (Warning:
this may be slow if N is large.)
G or > or ESC->
Go to line N in the file, default the end of the file. (Warning: this
may be slow if N is large, or if N is not specified and standard input,
rather than a file, is being read.)
ESC-G Same as G, except if no number N is specified and the input is standard
input, goes to the last line which is currently buffered.
p or % Go to a position N percent into the file. N should be between 0 and
100, and may contain a decimal point.
P Go to the line containing byte offset N in the file.
{ If a left curly bracket appears in the top line displayed on the
screen, the { command will go to the matching right curly bracket. The
matching right curly bracket is positioned on the bottom line of the
screen. If there is more than one left curly bracket on the top line,
a number N may be used to specify the N-th bracket on the line.
} If a right curly bracket appears in the bottom line displayed on the
screen, the } command will go to the matching left curly bracket. The
matching left curly bracket is positioned on the top line of the
screen. If there is more than one right curly bracket on the top line,
a number N may be used to specify the N-th bracket on the line.
( Like {, but applies to parentheses rather than curly brackets.
) Like }, but applies to parentheses rather than curly brackets.
[ Like {, but applies to square brackets rather than curly brackets.
] Like }, but applies to square brackets rather than curly brackets.
ESC-^F Followed by two characters, acts like {, but uses the two characters as
open and close brackets, respectively. For example, "ESC ^F < >" could
be used to go forward to the > which matches the < in the top displayed
line.
ESC-^B Followed by two characters, acts like }, but uses the two characters as
open and close brackets, respectively. For example, "ESC ^B < >" could
be used to go backward to the < which matches the > in the bottom dis‐
played line.
m Followed by any lowercase or uppercase letter, marks the first dis‐
played line with that letter. If the status column is enabled via the
-J option, the status column shows the marked line.
M Acts like m, except the last displayed line is marked rather than the
first displayed line.
' (Single quote.) Followed by any lowercase or uppercase letter, returns
to the position which was previously marked with that letter. Followed
by another single quote, returns to the position at which the last
"large" movement command was executed. Followed by a ^ or $, jumps to
the beginning or end of the file respectively. Marks are preserved
when a new file is examined, so the ' command can be used to switch be‐
tween input files.
^X^X Same as single quote.
ESC-m Followed by any lowercase or uppercase letter, clears the mark identi‐
fied by that letter.
/pattern
Search forward in the file for the N-th line containing the pattern. N
defaults to 1. The pattern is a regular expression, as recognized by
the regular expression library supplied by your system. The search
starts at the first line displayed (but see the -a and -j options,
which change this).
Certain characters are special if entered at the beginning of the pat‐
tern; they modify the type of search rather than become part of the
pattern:
^N or !
Search for lines which do NOT match the pattern.
^E or *
Search multiple files. That is, if the search reaches the END
of the current file without finding a match, the search contin‐
ues in the next file in the command line list.
^F or @
Begin the search at the first line of the FIRST file in the com‐
mand line list, regardless of what is currently displayed on the
screen or the settings of the -a or -j options.
^K Highlight any text which matches the pattern on the current
screen, but don't move to the first match (KEEP current posi‐
tion).
^R Don't interpret regular expression metacharacters; that is, do a
simple textual comparison.
?pattern
Search backward in the file for the N-th line containing the pattern.
The search starts at the last line displayed (but see the -a and -j op‐
tions, which change this).
Certain characters are special as in the / command:
^N or !
Search for lines which do NOT match the pattern.
^E or *
Search multiple files. That is, if the search reaches the be‐
ginning of the current file without finding a match, the search
continues in the previous file in the command line list.
^F or @
Begin the search at the last line of the last file in the com‐
mand line list, regardless of what is currently displayed on the
screen or the settings of the -a or -j options.
^K As in forward searches.
^R As in forward searches.
ESC-/pattern
Same as "/*".
ESC-?pattern
Same as "?*".
n Repeat previous search, for N-th line containing the last pattern. If
the previous search was modified by ^N, the search is made for the N-th
line NOT containing the pattern. If the previous search was modified
by ^E, the search continues in the next (or previous) file if not sat‐
isfied in the current file. If the previous search was modified by ^R,
the search is done without using regular expressions. There is no ef‐
fect if the previous search was modified by ^F or ^K.
N Repeat previous search, but in the reverse direction.
ESC-n Repeat previous search, but crossing file boundaries. The effect is as
if the previous search were modified by *.
ESC-N Repeat previous search, but in the reverse direction and crossing file
boundaries.
ESC-u Undo search highlighting. Turn off highlighting of strings matching
the current search pattern. If highlighting is already off because of
a previous ESC-u command, turn highlighting back on. Any search com‐
mand will also turn highlighting back on. (Highlighting can also be
disabled by toggling the -G option; in that case search commands do not
turn highlighting back on.)
&pattern
Display only lines which match the pattern; lines which do not match
the pattern are not displayed. If pattern is empty (if you type & im‐
mediately followed by ENTER), any filtering is turned off, and all
lines are displayed. While filtering is in effect, an ampersand is
displayed at the beginning of the prompt, as a reminder that some lines
in the file may be hidden.
Certain characters are special as in the / command:
^N or !
Display only lines which do NOT match the pattern.
^R Don't interpret regular expression metacharacters; that is, do a
simple textual comparison.
:e [filename]
Examine a new file. If the filename is missing, the "current" file
(see the :n and :p commands below) from the list of files in the com‐
mand line is re-examined. A percent sign (%) in the filename is re‐
placed by the name of the current file. A pound sign (#) is replaced
by the name of the previously examined file. However, two consecutive
percent signs are simply replaced with a single percent sign. This al‐
lows you to enter a filename that contains a percent sign in the name.
Similarly, two consecutive pound signs are replaced with a single pound
sign. The filename is inserted into the command line list of files so
that it can be seen by subsequent :n and :p commands. If the filename
consists of several files, they are all inserted into the list of files
and the first one is examined. If the filename contains one or more
spaces, the entire filename should be enclosed in double quotes (also
see the -" option).
^X^V or E
Same as :e. Warning: some systems use ^V as a special literalization
character. On such systems, you may not be able to use ^V.
:n Examine the next file (from the list of files given in the command
line). If a number N is specified, the N-th next file is examined.
:p Examine the previous file in the command line list. If a number N is
specified, the N-th previous file is examined.
:x Examine the first file in the command line list. If a number N is
specified, the N-th file in the list is examined.
:d Remove the current file from the list of files.
t Go to the next tag, if there were more than one matches for the current
T Go to the previous tag, if there were more than one matches for the
current tag.
= or ^G or :f
Prints some information about the file being viewed, including its name
and the line number and byte offset of the bottom line being displayed.
If possible, it also prints the length of the file, the number of lines
in the file and the percent of the file above the last displayed line.
- Followed by one of the command line option letters (see OPTIONS below),
this will change the setting of that option and print a message de‐
scribing the new setting. If a ^P (CONTROL-P) is entered immediately
after the dash, the setting of the option is changed but no message is
printed. If the option letter has a numeric value (such as -b or -h),
or a string value (such as -P or -t), a new value may be entered after
the option letter. If no new value is entered, a message describing
the current setting is printed and nothing is changed.
-- Like the - command, but takes a long option name (see OPTIONS below)
rather than a single option letter. You must press ENTER or RETURN af‐
ter typing the option name. A ^P immediately after the second dash
suppresses printing of a message describing the new setting, as in the
- command.
-+ Followed by one of the command line option letters this will reset the
option to its default setting and print a message describing the new
setting. (The "-+X" command does the same thing as "-+X" on the com‐
mand line.) This does not work for string-valued options.
--+ Like the -+ command, but takes a long option name rather than a single
option letter.
-! Followed by one of the command line option letters, this will reset the
option to the "opposite" of its default setting and print a message de‐
scribing the new setting. This does not work for numeric or string-
valued options.
--! Like the -! command, but takes a long option name rather than a single
option letter.
_ (Underscore.) Followed by one of the command line option letters, this
will print a message describing the current setting of that option.
The setting of the option is not changed.
__ (Double underscore.) Like the _ (underscore) command, but takes a long
option name rather than a single option letter. You must press ENTER
or RETURN after typing the option name.
+cmd Causes the specified cmd to be executed each time a new file is exam‐
ined. For example, +G causes less to initially display each file
starting at the end rather than the beginning.
V Prints the version number of less being run.
q or Q or :q or :Q or ZZ
Exits less.
The following four commands may or may not be valid, depending on your partic‐
ular installation.
v Invokes an editor to edit the current file being viewed. The editor is
taken from the environment variable VISUAL if defined, or EDITOR if
VISUAL is not defined, or defaults to "vi" if neither VISUAL nor EDITOR
is defined. See also the discussion of LESSEDIT under the section on
PROMPTS below.
! shell-command
Invokes a shell to run the shell-command given. A percent sign (%) in
the command is replaced by the name of the current file. A pound sign
(#) is replaced by the name of the previously examined file. "!!" re‐
peats the last shell command. "!" with no shell command simply invokes
a shell. On Unix systems, the shell is taken from the environment
variable SHELL, or defaults to "sh". On MS-DOS and OS/2 systems, the
shell is the normal command processor.
| <m> shell-command
<m> represents any mark letter. Pipes a section of the input file to
the given shell command. The section of the file to be piped is be‐
tween the position marked by the letter and the current screen. The
entire current screen is included, regardless of whether the marked po‐
sition is before or after the current screen. <m> may also be ^ or $
to indicate beginning or end of file respectively. If <m> is . or new‐
line, the current screen is piped.
s filename
Save the input to a file. This only works if the input is a pipe, not
an ordinary file.