Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LESS(1)								       LESS(1)

NAME
       less - opposite of more

SYNOPSIS
       less -?
       less --help
       less -V
       less --version
       less [-[+]aBcCdeEfFgGiIJKLmMnNqQrRsSuUVwWX~]
	    [-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 which	allows backward	 move-
       ment in the file	as well	as forward movement.  Also, less does not have
       to read the entire input	file before  starting,	so  with  large	 input
       files  it  starts  up  faster than text editors like vi (1).  Less uses
       termcap (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 terminal, 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 commands, 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  spe-
	      cial 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.

       RETURN or ^N or e or ^E or j or ^J
	      Scroll  forward N	lines, default 1.  The entire N	lines are dis-
	      played, 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 dis-
	      played, 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.

       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  default  for  future RIGHTARROW and	LEFTARROW com-
	      mands.  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  default  for  future RIGHTARROW and	LEFTARROW com-
	      mands.

       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 growing while it	is being  viewed.   (The  behavior  is
	      similar to the "tail -f" command.)

       g or < or ESC-<
	      Go to line N in the file,	default	1 (beginning of	file).	(Warn-
	      ing: 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.	(Warn-
	      ing:  this  may  be slow if N is large, or if N is not specified
	      and standard input, rather than a	file, is being read.)

       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	brack-
	      ets.

       ]      Like }, but applies to square brackets rather than curly	brack-
	      ets.

       ESC-^F Followed	by two characters, acts	like {,	but uses the two char-
	      acters 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	 char-
	      acters  as  open and close brackets, respectively.  For example,
	      "ESC ^B <	>" could be used to go backward	to the < which matches
	      the > in the bottom displayed line.

       m      Followed	by  any	 lowercase  letter, marks the current position
	      with that	letter.

       '      (Single quote.)  Followed	by any lowercase  letter,  returns  to
	      the position which was previously	marked with that letter.  Fol-
	      lowed 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	' com-
	      mand can be used to switch between input files.

       ^X^X   Same as single quote.

       /pattern
	      Search forward in	the file for the N-th line containing the pat-
	      tern.  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	second line displayed (but see
	      the -a and -j options, which change this).

	      Certain characters are special if	entered	at  the	 beginning  of
	      the  pattern;  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 continues in the next file	in  the	 command  line
		     list.

	      ^F or @
		     Begin  the	 search	at the first line of the FIRST file in
		     the command 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  cur-
		     rent screen, but don't move to the	first match (KEEP cur-
		     rent position).

	      ^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 line immediately  before  the
	      top line displayed.

	      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 beginning 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
		     command  line  list, regardless of	what is	currently dis-
		     played 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 pat-
	      tern.  If	the previous search was	modified by ^N,	the search  is
	      made  for	the N-th line NOT containing the pattern.  If the pre-
	      vious search was modified	by ^E, the  search  continues  in  the
	      next  (or	 previous)  file if not	satisfied in the current file.
	      If the previous search was modified by ^R, the  search  is  done
	      without  using  regular  expressions.  There is no effect	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	cross-
	      ing 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	 command  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	 &  immediately	 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 command line is re-examined.  A percent sign (%)  in  the
	      filename	is  replaced 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 allows	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  literal-
	      ization  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  com-
	      mand  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 tag.  See	the -t option for more details about tags.

       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 describing 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 set-
	      ting 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
	      RETURN after 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	command	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 describing 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 let-
	      ters, 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 RETURN after typing	the option name.

       +cmd   Causes  the specified cmd	to be executed each time a new file is
	      examined.	 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
       particular 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  nei-
	      ther  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 exam-
	      ined  file.   "!!"  repeats 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	 between  the first line on the	current	screen and the
	      position marked by the letter.  <m> may also be ^	or $ to	 indi-
	      cate 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.

OPTIONS
       Command	line options are described below.  Most	options	may be changed
       while less is running, via the "-" command.

       Most options may	be given in one	of two forms: either a	dash  followed
       by  a  single  letter, or two dashes followed by	a long option name.  A
       long option name	may be abbreviated as  long  as	 the  abbreviation  is
       unambiguous.  For example, --quit-at-eof	may be abbreviated --quit, but
       not --qui, since	both --quit-at-eof and --quiet begin with --qui.  Some
       long  option names are in uppercase, such as --QUIT-AT-EOF, as distinct
       from --quit-at-eof.  Such option	names need only	have their first  let-
       ter  capitalized; the remainder of the name may be in either case.  For
       example,	--Quit-at-eof is equivalent to --QUIT-AT-EOF.

       Options are also	taken from the environment variable "LESS".  For exam-
       ple, to avoid typing "less -options ..."	each time less is invoked, you
       might tell csh:

       setenv LESS "-options"

       or if you use sh:

       LESS="-options";	export LESS

       On MS-DOS, you don't need the quotes, but you should replace  any  per-
       cent signs in the options string	by double percent signs.

       The  environment	variable is parsed before the command line, so command
       line options override the LESS  environment  variable.	If  an	option
       appears	in  the	LESS variable, it can be reset to its default value on
       the command line	by beginning the command line option with "-+".

       For options like	-P or -D which take a following	string,	a dollar  sign
       ($)  must be used to signal the end of the string.  For example,	to set
       two -D options on MS-DOS, you must have a  dollar  sign	between	 them,
       like this:

       LESS="-Dn9.1$-Ds4.1"

       -? or --help
	      This  option displays a summary of the commands accepted by less
	      (the same	as the h  command).   (Depending  on  how  your	 shell
	      interprets  the  question	mark, it may be	necessary to quote the
	      question mark, thus: "-\?".)

       -a or --search-skip-screen
	      Causes searches to start after the last line  displayed  on  the
	      screen,  thus  skipping  all  lines displayed on the screen.  By
	      default, searches	start at the second line  on  the  screen  (or
	      after the	last found line; see the -j option).

       -bn or --buffers=n
	      Specifies	 the  amount  of  buffer  space	less will use for each
	      file, in units of	kilobytes (1024	bytes).	  By  default  64K  of
	      buffer  space  is	used for each file (unless the file is a pipe;
	      see the -B option).  The -b  option  specifies  instead  that  n
	      kilobytes	of buffer space	should be used for each	file.  If n is
	      -1, buffer space is unlimited; that is, the entire file  can  be
	      read into	memory.

       -B or --auto-buffers
	      By default, when data is read from a pipe, buffers are allocated
	      automatically as needed.	If a large amount of data is read from
	      the  pipe,  this	can cause a large amount of memory to be allo-
	      cated.  The -B option  disables  this  automatic	allocation  of
	      buffers  for  pipes,  so	that  only 64K (or the amount of space
	      specified	by the -b option) is used for the pipe.	 Warning:  use
	      of  -B  can  result  in  erroneous  display, since only the most
	      recently viewed part of the piped	data is	kept  in  memory;  any
	      earlier data is lost.

       -c or --clear-screen
	      Causes  full  screen  repaints  to  be painted from the top line
	      down.  By	default, full screen repaints are  done	 by  scrolling
	      from the bottom of the screen.

       -C or --CLEAR-SCREEN
	      Same as -c, for compatibility with older versions	of less.

       -d or --dumb
	      The -d option suppresses the error message normally displayed if
	      the terminal is dumb; that is, lacks some	important  capability,
	      such as the ability to clear the screen or scroll	backward.  The
	      -d option	does not otherwise change the behavior of  less	 on  a
	      dumb terminal.

       -Dxcolor	or --color=xcolor
	      [MS-DOS only] Sets the color of the text displayed.  x is	a sin-
	      gle character which selects the type  of	text  whose  color  is
	      being  set: n=normal, s=standout,	d=bold,	u=underlined, k=blink.
	      color is a pair of numbers separated by  a  period.   The	 first
	      number  selects  the foreground color and	the second selects the
	      background color of the text.  A single number N is the same  as
	      N.M, where M is the normal background color.

       -e or --quit-at-eof
	      Causes  less  to	automatically  exit the	second time it reaches
	      end-of-file.  By default,	the only way to	exit less is  via  the
	      "q" command.

       -E or --QUIT-AT-EOF
	      Causes less to automatically exit	the first time it reaches end-
	      of-file.

       -f or --force
	      Forces non-regular files to be opened.  (A non-regular file is a
	      directory	 or a device special file.)  Also suppresses the warn-
	      ing message when a binary	file is	opened.	 By default, less will
	      refuse to	open non-regular files.	 Note that some	operating sys-
	      tems will	not allow directories to be read, even if -f is	set.

       -F or --quit-if-one-screen
	      Causes less to automatically exit	if the entire file can be dis-
	      played on	the first screen.

       -g or --hilite-search
	      Normally,	 less  will highlight ALL strings which	match the last
	      search command.  The -g option changes this  behavior  to	 high-
	      light  only  the	particular  string which was found by the last
	      search command.  This can	cause less to run somewhat faster than
	      the default.

       -G or --HILITE-SEARCH
	      The  -G  option  suppresses all highlighting of strings found by
	      search commands.

       -hn or --max-back-scroll=n
	      Specifies	a maximum number of lines to scroll backward.	If  it
	      is necessary to scroll backward more than	n lines, the screen is
	      repainted	in a forward direction instead.	 (If the terminal does
	      not have the ability to scroll backward, -h0 is implied.)

       -i or --ignore-case
	      Causes searches to ignore	case; that is, uppercase and lowercase
	      are considered identical.	 This option is	ignored	if any	upper-
	      case  letters appear in the search pattern; in other words, if a
	      pattern contains uppercase letters, then that  search  does  not
	      ignore case.

       -I or --IGNORE-CASE
	      Like  -i,	 but searches ignore case even if the pattern contains
	      uppercase	letters.

       -jn or --jump-target=n
	      Specifies	a line on the screen where the "target"	line is	to  be
	      positioned.   The	 target	line is	the line specified by any com-
	      mand to search for a pattern, jump to a line number, jump	 to  a
	      file percentage or jump to a tag.	 The screen line may be	speci-
	      fied by a	number:	the top	line on	the screen is 1, the  next  is
	      2, and so	on.  The number	may be negative	to specify a line rel-
	      ative to the bottom of the screen: the bottom line on the	screen
	      is  -1, the second to the	bottom is -2, and so on.  Alternately,
	      the screen line may be specified as a fraction of	the height  of
	      the  screen,  starting with a decimal point: .5 is in the	middle
	      of the screen, .3	is three tenths	down from the first line,  and
	      so  on.  If the line is specified	as a fraction, the actual line
	      number is	recalculated if	the terminal  window  is  resized,  so
	      that  the	 target	 line remains at the specified fraction	of the
	      screen height.  If any form of the -j option  is	used,  forward
	      searches	begin  at  the line immediately	after the target line,
	      and backward searches begin at the target	line.  For example, if
	      "-j4" is used, the target	line is	the fourth line	on the screen,
	      so forward searches begin	at the fifth line on the screen.

       -J or --status-column
	      Displays a status	column at the left edge	of  the	 screen.   The
	      status  column  shows the	lines that matched the current search.
	      The status column	is also	used if	the -w	or  -W	option	is  in
	      effect.

       -kfilename or --lesskey-file=filename
	      Causes  less  to	open and interpret the named file as a lesskey
	      (1) file.	 Multiple -k options may be specified.	If the LESSKEY
	      or  LESSKEY_SYSTEM  environment variable is set, or if a lesskey
	      file is found in a standard place	(see KEY BINDINGS), it is also
	      used as a	lesskey	file.

       -K or --quit-on-intr
	      Causes  less  to	exit  immediately  when	an interrupt character
	      (usually ^C) is typed.  Normally,	an interrupt character	causes
	      less  to	stop  whatever	it  is doing and return	to its command
	      prompt.  Note that use of	this option  makes  it	impossible  to
	      return to	the command prompt from	the "F"	command.

       -L or --no-lessopen
	      Ignore  the  LESSOPEN  environment  variable (see	the INPUT PRE-
	      PROCESSOR	section	below).	 This option can be  set  from	within
	      less,  but  it will apply	only to	files opened subsequently, not
	      to the file which	is currently open.

       -m or --long-prompt
	      Causes less to prompt verbosely (like more),  with  the  percent
	      into the file.  By default, less prompts with a colon.

       -M or --LONG-PROMPT
	      Causes less to prompt even more verbosely	than more.

       -n or --line-numbers
	      Suppresses  line numbers.	 The default (to use line numbers) may
	      cause less to run	more slowly in some cases, especially  with  a
	      very  large  input  file.	  Suppressing line numbers with	the -n
	      option will avoid	this problem.  Using line numbers  means:  the
	      line number will be displayed in the verbose prompt and in the =
	      command, and the v command will pass the current line number  to
	      the  editor  (see	 also  the  discussion	of LESSEDIT in PROMPTS
	      below).

       -N or --LINE-NUMBERS
	      Causes a line number to be displayed at the  beginning  of  each
	      line in the display.

       -ofilename or --log-file=filename
	      Causes  less  to copy its	input to the named file	as it is being
	      viewed.  This applies only when the input	file is	a pipe,	not an
	      ordinary	file.	If  the	file already exists, less will ask for
	      confirmation before overwriting it.

       -Ofilename or --LOG-FILE=filename
	      The -O option is like -o,	but it will overwrite an existing file
	      without asking for confirmation.

	      If  no log file has been specified, the -o and -O	options	can be
	      used from	within less to specify a log  file.   Without  a  file
	      name, they will simply report the	name of	the log	file.  The "s"
	      command is equivalent to specifying -o from within less.

       -ppattern or --pattern=pattern
	      The -p option on the command line	is  equivalent	to  specifying
	      +/pattern;  that	is, it tells less to start at the first	occur-
	      rence of pattern in the file.

       -Pprompt	or --prompt=prompt
	      Provides a way to	tailor the three prompt	 styles	 to  your  own
	      preference.  This	option would normally be put in	the LESS envi-
	      ronment variable,	rather than being typed	in with	each less com-
	      mand.  Such an option must either	be the last option in the LESS
	      variable,	or be terminated by a dollar sign.  -Ps	followed by  a
	      string  changes  the default (short) prompt to that string.  -Pm
	      changes the medium (-m)  prompt.	 -PM  changes  the  long  (-M)
	      prompt.	-Ph  changes  the  prompt  for	the  help screen.  -P=
	      changes the message printed by the = command.  -Pw  changes  the
	      message  printed while waiting for data (in the F	command).  All
	      prompt strings consist of	a  sequence  of	 letters  and  special
	      escape  sequences.  See the section on PROMPTS for more details.

       -q or --quiet or	--silent
	      Causes moderately	"quiet"	operation: the terminal	 bell  is  not
	      rung if an attempt is made to scroll past	the end	of the file or
	      before the beginning of the file.	 If the	terminal has a "visual
	      bell",  it  is  used  instead.  The bell will be rung on certain
	      other errors, such as typing an invalid character.  The  default
	      is to ring the terminal bell in all such cases.

       -Q or --QUIET or	--SILENT
	      Causes  totally  "quiet"	operation:  the	terminal bell is never
	      rung.

       -r or --raw-control-chars
	      Causes "raw" control characters to be displayed.	The default is
	      to  display  control  characters	using  the caret notation; for
	      example, a control-A (octal 001) is displayed as "^A".  Warning:
	      when the -r option is used, less cannot keep track of the	actual
	      appearance of the	screen (since this depends on how  the	screen
	      responds to each type of control character).  Thus, various dis-
	      play problems may	result,	such as	long lines being split in  the
	      wrong place.

       -R or --RAW-CONTROL-CHARS
	      Like  -r,	 but  only ANSI	"color"	escape sequences are output in
	      "raw" form.  Unlike -r, the screen appearance is maintained cor-
	      rectly  in  most	cases.	 ANSI  "color"	escape	sequences  are
	      sequences	of the form:

		   ESC [ ... m

	      where the	"..." is zero or more color  specification  characters
	      For  the	purpose	 of  keeping  track of screen appearance, ANSI
	      color escape sequences are assumed to not	move the cursor.   You
	      can  make	less think that	characters other than "m" can end ANSI
	      color escape  sequences  by  setting  the	 environment  variable
	      LESSANSIENDCHARS to the list of characters which can end a color
	      escape sequence.	And you	can make less  think  that  characters
	      other  than the standard ones may	appear between the ESC and the
	      m	by setting the environment variable  LESSANSIMIDCHARS  to  the
	      list of characters which can appear.

       -s or --squeeze-blank-lines
	      Causes  consecutive  blank  lines	 to  be	squeezed into a	single
	      blank line.  This	is useful when viewing nroff output.

       -S or --chop-long-lines
	      Causes lines longer than the screen width	to be  chopped	rather
	      than  folded.  That is, the portion of a long line that does not
	      fit in the screen	width is not shown.  The default  is  to  fold
	      long lines; that is, display the remainder on the	next line.

       -ttag or	--tag=tag
	      The -t option, followed immediately by a TAG, will edit the file
	      containing that tag.  For	this to	work, tag information must  be
	      available;  for  example,	 there	may  be	 a file	in the current
	      directory	called "tags", which was previously built by ctags (1)
	      or an equivalent command.	 If the	environment variable LESSGLOB-
	      ALTAGS is	set, it	is taken to be the name	of a command  compati-
	      ble  with	 global	 (1), and that command is executed to find the
	      tag.  (See http://www.gnu.org/software/global/global.html).  The
	      -t  option  may  also be specified from within less (using the -
	      command) as a way	of examining a new file.  The command ":t"  is
	      equivalent to specifying -t from within less.

       -Ttagsfile or --tag-file=tagsfile
	      Specifies	a tags file to be used instead of "tags".

       -u or --underline-special
	      Causes  backspaces  and carriage returns to be treated as	print-
	      able characters; that is,	they are sent  to  the	terminal  when
	      they appear in the input.

       -U or --UNDERLINE-SPECIAL
	      Causes  backspaces,  tabs	 and carriage returns to be treated as
	      control characters; that is, they	are handled  as	 specified  by
	      the -r option.

	      By  default,  if	neither	 -u  nor -U is given, backspaces which
	      appear adjacent to an  underscore	 character  are	 treated  spe-
	      cially:  the  underlined	text is	displayed using	the terminal's
	      hardware underlining capability.	Also, backspaces which	appear
	      between  two  identical  characters  are	treated	specially: the
	      overstruck text is printed using the terminal's  hardware	 bold-
	      face  capability.	  Other	backspaces are deleted,	along with the
	      preceding	character.  Carriage returns immediately followed by a
	      newline  are  deleted.   other  carriage	returns	are handled as
	      specified	by the -r option.  Text	which is overstruck or	under-
	      lined can	be searched for	if neither -u nor -U is	in effect.

       -V or --version
	      Displays the version number of less.

       -w or --hilite-unread
	      Temporarily  highlights  the  first  "new"  line after a forward
	      movement of a full page.	The first "new"	line is	the line imme-
	      diately  following  the  line  previously	 at  the bottom	of the
	      screen.  Also highlights the target line after a g or p command.
	      The  highlight is	removed	at the next command which causes move-
	      ment.  The entire	line is	highlighted, unless the	-J  option  is
	      in  effect, in which case	only the status	column is highlighted.

       -W or --HILITE-UNREAD
	      Like -w, but temporarily highlights the first new	line after any
	      forward movement command larger than one line.

       -xn,... or --tabs=n,...
	      Sets  tab	 stops.	 If only one n is specified, tab stops are set
	      at multiples of n.  If multiple values separated by  commas  are
	      specified,  tab  stops are set at	those positions, and then con-
	      tinue with the same spacing  as  the  last  two.	 For  example,
	      -x9,17  will  set	 tabs  at  positions  9, 17, 25, 33, etc.  The
	      default for n is 8.

       -X or --no-init
	      Disables sending the termcap initialization and deinitialization
	      strings  to  the	terminal.   This is sometimes desirable	if the
	      deinitialization string does something unnecessary, like	clear-
	      ing the screen.

       -yn or --max-forw-scroll=n
	      Specifies	a maximum number of lines to scroll forward.  If it is
	      necessary	to scroll forward more than n  lines,  the  screen  is
	      repainted	 instead.   The	-c or -C option	may be used to repaint
	      from the top of the screen if desired.  By default, any  forward
	      movement causes scrolling.

       -[z]n or	--window=n
	      Changes  the  default  scrolling	window	size  to n lines.  The
	      default is one screenful.	 The z and w commands can also be used
	      to  change the window size.  The "z" may be omitted for compati-
	      bility with some versions	of more.  If the number	n is negative,
	      it  indicates  n	lines  less than the current screen size.  For
	      example, if the screen is	24 lines, -z-4 sets the	scrolling win-
	      dow  to  20  lines.   If	the screen is resized to 40 lines, the
	      scrolling	window automatically changes to	36 lines.

       -"cc or --quotes=cc
	      Changes the filename quoting character.  This may	 be  necessary
	      if  you are trying to name a file	which contains both spaces and
	      quote characters.	 Followed by a single character, this  changes
	      the  quote  character to that character.	Filenames containing a
	      space should then	be surrounded by that character	rather than by
	      double  quotes.	Followed  by  two characters, changes the open
	      quote to the first character, and	the close quote	to the	second
	      character.  Filenames containing a space should then be preceded
	      by the open quote	character and  followed	 by  the  close	 quote
	      character.   Note	 that  even  after  the	 quote	characters are
	      changed, this option remains -" (a dash  followed	 by  a	double
	      quote).

       -~ or --tilde
	      Normally lines after end of file are displayed as	a single tilde
	      (~).  This option	causes lines after end of file to be displayed
	      as blank lines.

       -# or --shift
	      Specifies	the default number of positions	to scroll horizontally
	      in the RIGHTARROW	and LEFTARROW commands.	 If the	number	speci-
	      fied  is	zero,  it  sets	the default number of positions	to one
	      half of the screen width.	 Alternately, the number may be	speci-
	      fied  as	a fraction of the width	of the screen, starting	with a
	      decimal point: .5	is half	of  the	 screen	 width,	 .3  is	 three
	      tenths  of the screen width, and so on.  If the number is	speci-
	      fied as a	fraction, the actual number  of	 scroll	 positions  is
	      recalculated  if	the  terminal  window  is resized, so that the
	      actual scroll remains at the specified fraction  of  the	screen
	      width.

       --no-keypad
	      Disables	sending	the keypad initialization and deinitialization
	      strings to the terminal.	This is	sometimes useful if the	keypad
	      strings make the numeric keypad behave in	an undesirable manner.

       --follow-name
	      Normally,	if the input file is renamed while  an	F  command  is
	      executing,  less	will  continue	to display the contents	of the
	      original file despite its	 name  change.	 If  --follow-name  is
	      specified, during	an F command less will periodically attempt to
	      reopen the file by name.	If the reopen succeeds and the file is
	      a	 different file	from the original (which means that a new file
	      has been created	with  the  same	 name  as  the	original  (now
	      renamed) file), less will	display	the contents of	that new file.

       --     A	command	line argument of "--" marks the	end  of	 option	 argu-
	      ments.   Any  arguments  following this are interpreted as file-
	      names.  This can be useful when viewing a	file whose name	begins
	      with a "-" or "+".

       +      If  a  command  line option begins with +, the remainder of that
	      option is	taken to be an initial command to less.	 For  example,
	      +G  tells	 less  to start	at the end of the file rather than the
	      beginning, and +/xyz tells it to start at	the  first  occurrence
	      of  "xyz"	 in  the file.	As a special case, +<number> acts like
	      +<number>g; that is, it starts the display at the	specified line
	      number  (however,	 see  the caveat under the "g" command above).
	      If the option starts with	++, the	 initial  command  applies  to
	      every  file being	viewed,	not just the first one.	 The + command
	      described	previously may also be used to set (or change) an ini-
	      tial command for every file.

LINE EDITING
       When  entering command line at the bottom of the	screen (for example, a
       filename	for the	:e command, or the pattern for a search	command), cer-
       tain  keys  can	be used	to manipulate the command line.	 Most commands
       have an alternate form in [ brackets ] which can	be used	if a key  does
       not  exist  on  a  particular keyboard.	(Note that the forms beginning
       with ESC	do not work in some MS-DOS and Windows systems because ESC  is
       the  line  erase	 character.)  Any of these special keys	may be entered
       literally by preceding it with the "literal" character,	either	^V  or
       ^A.   A	backslash itself may also be entered literally by entering two
       backslashes.

       LEFTARROW [ ESC-h ]
	      Move the cursor one space	to the left.

       RIGHTARROW [ ESC-l ]
	      Move the cursor one space	to the right.

       ^LEFTARROW [ ESC-b or ESC-LEFTARROW ]
	      (That is,	CONTROL	and LEFTARROW simultaneously.)	Move the  cur-
	      sor one word to the left.

       ^RIGHTARROW [ ESC-w or ESC-RIGHTARROW ]
	      (That is,	CONTROL	and RIGHTARROW simultaneously.)	 Move the cur-
	      sor one word to the right.

       HOME [ ESC-0 ]
	      Move the cursor to the beginning of the line.

       END [ ESC-$ ]
	      Move the cursor to the end of the	line.

       BACKSPACE
	      Delete the character to the left of the cursor,  or  cancel  the
	      command if the command line is empty.

       DELETE or [ ESC-x ]
	      Delete the character under the cursor.

       ^BACKSPACE [ ESC-BACKSPACE ]
	      (That  is,  CONTROL  and	BACKSPACE simultaneously.)  Delete the
	      word to the left of the cursor.

       ^DELETE [ ESC-X or ESC-DELETE ]
	      (That is,	CONTROL	and DELETE simultaneously.)  Delete  the  word
	      under the	cursor.

       UPARROW [ ESC-k ]
	      Retrieve the previous command line.

       DOWNARROW [ ESC-j ]
	      Retrieve the next	command	line.

       TAB    Complete	the partial filename to	the left of the	cursor.	 If it
	      matches more than	one filename, the first	match is entered  into
	      the  command  line.   Repeated  TABs  will  cycle	thru the other
	      matching filenames.  If the completed filename is	a directory, a
	      "/"  is  appended	to the filename.  (On MS-DOS systems, a	"\" is
	      appended.)  The environment variable LESSSEPARATOR can  be  used
	      to  specify a different character	to append to a directory name.

       BACKTAB [ ESC-TAB ]
	      Like, TAB, but cycles in the reverse direction thru the matching
	      filenames.

       ^L     Complete	the partial filename to	the left of the	cursor.	 If it
	      matches more than	one filename, all matches are entered into the
	      command line (if they fit).

       ^U (Unix	and OS/2) or ESC (MS-DOS)
	      Delete  the  entire  command  line, or cancel the	command	if the
	      command line is empty.  If you have changed your line-kill char-
	      acter in Unix to something other than ^U,	that character is used
	      instead of ^U.

KEY BINDINGS
       You may define your own less commands by	using the program lesskey  (1)
       to  create  a  lesskey file.  This file specifies a set of command keys
       and an action associated	with each key.	You may	also  use  lesskey  to
       change the line-editing keys (see LINE EDITING),	and to set environment
       variables.  If the environment variable LESSKEY is set, less uses  that
       as  the	name of	the lesskey file.  Otherwise, less looks in a standard
       place for the lesskey file: On Unix systems, less looks for  a  lesskey
       file  called  "$HOME/.less".  On	MS-DOS and Windows systems, less looks
       for a lesskey file called "$HOME/_less",	and if it is not found	there,
       then looks for a	lesskey	file called "_less" in any directory specified
       in the PATH environment variable.  On OS/2 systems, less	 looks	for  a
       lesskey	file  called  "$HOME/less.ini",	 and  if it is not found, then
       looks for a lesskey file	called "less.ini" in any  directory  specified
       in the INIT environment variable, and if	it not found there, then looks
       for a lesskey file called "less.ini" in any directory specified in  the
       PATH  environment  variable.   See  the	lesskey	 manual	 page for more
       details.

       A system-wide lesskey file may also be set up to	provide	key  bindings.
       If a key	is defined in both a local lesskey file	and in the system-wide
       file, key bindings in the local file take precedence over those in  the
       system-wide  file.   If the environment variable	LESSKEY_SYSTEM is set,
       less uses that as the name of the system-wide lesskey file.  Otherwise,
       less  looks  in	a  standard place for the system-wide lesskey file: On
       Unix systems, the system-wide lesskey file  is  /usr/local/etc/sysless.
       (However,  if  less  was	 built with a different	sysconf	directory than
       /usr/local/etc, that directory is where the sysless file	is found.)  On
       MS-DOS  and  Windows  systems, the system-wide lesskey file is c:\_sys-
       less.  On OS/2 systems, the system-wide lesskey file is c:\sysless.ini.

INPUT PREPROCESSOR
       You  may	 define	an "input preprocessor"	for less.  Before less opens a
       file, it	first gives your input preprocessor a chance to	modify the way
       the  contents of	the file are displayed.	 An input preprocessor is sim-
       ply an executable program (or shell script), which writes the  contents
       of the file to a	different file,	called the replacement file.  The con-
       tents of	the replacement	file are then displayed	in place of  the  con-
       tents  of the original file.  However, it will appear to	the user as if
       the original file is opened; that is, less will	display	 the  original
       filename	as the name of the current file.

       An  input preprocessor receives one command line	argument, the original
       filename, as entered by the user.  It  should  create  the  replacement
       file,  and when finished, print the name	of the replacement file	to its
       standard	output.	 If the	input preprocessor does	not output a  replace-
       ment  filename, less uses the original file, as normal.	The input pre-
       processor is not	called when viewing standard  input.   To  set	up  an
       input  preprocessor, set	the LESSOPEN environment variable to a command
       line which will invoke your  input  preprocessor.   This	 command  line
       should  include	one  occurrence	 of  the  string  "%s",	 which will be
       replaced	by  the	 filename  when	 the  input  preprocessor  command  is
       invoked.

       When less closes	a file opened in such a	way, it	will call another pro-
       gram, called the	input postprocessor, which  may	 perform  any  desired
       clean-up	 action	 (such	as  deleting  the  replacement file created by
       LESSOPEN).  This	program	receives two command line arguments, the orig-
       inal  filename  as entered by the user, and the name of the replacement
       file.  To set up	an input postprocessor,	set the	LESSCLOSE  environment
       variable	 to a command line which will invoke your input	postprocessor.
       It may include two  occurrences	of  the	 string	 "%s";	the  first  is
       replaced	 with  the  original  name of the file and the second with the
       name of the replacement file, which was output by LESSOPEN.

       For example, on many Unix systems, these	two scripts will allow you  to
       keep files in compressed	format,	but still let less view	them directly:

       lessopen.sh:
	    #! /bin/sh
	    case "$1" in
	    *.Z) uncompress -
		 if [ -s /tmp/less.$$ ]; then
		      echo /tmp/less.$$
		 else
		      rm -f /tmp/less.$$
		 fi
		 ;;
	    esac

       lessclose.sh:
	    #! /bin/sh
	    rm $2

       To use these scripts, put them both where they can be executed and  set
       LESSOPEN="lessopen.sh %s",  and	LESSCLOSE="lessclose.sh	%s %s".	  More
       complex LESSOPEN	and LESSCLOSE scripts may be written to	 accept	 other
       types of	compressed files, and so on.

       It  is  also  possible to set up	an input preprocessor to pipe the file
       data directly to	less, rather than putting the data into	a  replacement
       file.  This avoids the need to decompress the entire file before	start-
       ing to view it.	An input preprocessor that works this way is called an
       input  pipe.   An input pipe, instead of	writing	the name of a replace-
       ment file on its	standard output, writes	the  entire  contents  of  the
       replacement  file  on  its standard output.  If the input pipe does not
       write any characters on its standard output, then there is no  replace-
       ment  file and less uses	the original file, as normal.  To use an input
       pipe, make the first character in the LESSOPEN environment  variable  a
       vertical	 bar  (|)  to  signify that the	input preprocessor is an input
       pipe.

       For example, on many Unix systems, this script will work	like the  pre-
       vious example scripts:

       lesspipe.sh:
	    #! /bin/sh
	    case "$1" in
	    *.Z) uncompress -c $1  2>/dev/null
		 ;;
	    esac

       To  use	this  script,  put  it	where  it  can	be  executed  and  set
       LESSOPEN="|lesspipe.sh %s".  When an input pipe is  used,  a  LESSCLOSE
       postprocessor  can be used, but it is usually not necessary since there
       is no replacement file to clean up.  In this case, the replacement file
       name passed to the LESSCLOSE postprocessor is "-".

       For  compatibility with previous	versions of less, the input preproces-
       sor or pipe is not used if less is viewing standard input.  However, if
       the  first  character of	LESSOPEN is a dash (-),	the input preprocessor
       is used on standard input as well as other files.  In  this  case,  the
       dash  is	 not  considered  to  be part of the preprocessor command.  If
       standard	input is being viewed, the input preprocessor is passed	a file
       name  consisting	of a single dash.  Similarly, if the first two charac-
       ters of LESSOPEN	are vertical bar and dash (|-),	the input pipe is used
       on standard input as well as other files.  Again, in this case the dash
       is not considered to be part of the input pipe command.

NATIONAL CHARACTER SETS
       There are three types of	characters in the input	file:

       normal characters
	      can be displayed directly	to the screen.

       control characters
	      should not be displayed directly,	but are	expected to  be	 found
	      in ordinary text files (such as backspace	and tab).

       binary characters
	      should  not  be  displayed  directly  and	are not	expected to be
	      found in text files.

       A "character set" is simply a description of which characters are to be
       considered  normal,  control,  and binary.  The LESSCHARSET environment
       variable	may be used to select a	character set.	 Possible  values  for
       LESSCHARSET are:

       ascii  BS,  TAB,	NL, CR,	and formfeed are control characters, all chars
	      with values between 32 and 126 are normal, and  all  others  are
	      binary.

       iso8859
	      Selects  an  ISO 8859 character set.  This is the	same as	ASCII,
	      except characters	between	160 and	 255  are  treated  as	normal
	      characters.

       latin1 Same as iso8859.

       latin9 Same as iso8859.

       dos    Selects a	character set appropriate for MS-DOS.

       ebcdic Selects an EBCDIC	character set.

       IBM-1047
	      Selects  an  EBCDIC  character set used by OS/390	Unix Services.
	      This is the EBCDIC analogue of latin1.  You get similar  results
	      by setting either	LESSCHARSET=IBM-1047 or	LC_CTYPE=en_US in your
	      environment.

       koi8-r Selects a	Russian	character set.

       next   Selects a	character set appropriate for NeXT computers.

       utf-8  Selects the UTF-8	encoding  of  the  ISO	10646  character  set.
	      UTF-8  is	 special  in that it supports multi-byte characters in
	      the input	file.  It is the  only	character  set	that  supports
	      multi-byte characters.

       windows
	      Selects  a  character  set appropriate for Microsoft Windows (cp
	      1251).

       In rare cases, it may be	desired	to tailor less to use a	character  set
       other  than the ones definable by LESSCHARSET.  In this case, the envi-
       ronment variable	LESSCHARDEF can	be used	to define a character set.  It
       should be set to	a string where each character in the string represents
       one character in	the character set.  The	character "." is  used	for  a
       normal  character, "c" for control, and "b" for binary.	A decimal num-
       ber may be used for repetition.	 For  example,	"bccc4b."  would  mean
       character  0  is	 binary,  1,  2	 and  3	are control, 4,	5, 6 and 7 are
       binary, and 8 is	normal.	 All characters	after the last are taken to be
       the  same  as  the  last,  so characters	9 through 255 would be normal.
       (This is	an example, and	does not necessarily represent any real	 char-
       acter set.)

       This  table  shows the value of LESSCHARDEF which is equivalent to each
       of the possible values for LESSCHARSET:

	    ascii     8bcccbcc18b95.b
	    dos	      8bcccbcc12bc5b95.b.
	    ebcdic    5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b
		      9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b.
	    IBM-1047  4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc
		      191.b
	    iso8859   8bcccbcc18b95.33b.
	    koi8-r    8bcccbcc18b95.b128.
	    latin1    8bcccbcc18b95.33b.
	    next      8bcccbcc18b95.bb125.bb

       If neither LESSCHARSET nor LESSCHARDEF is set, but any of  the  strings
       "UTF-8",	 "UTF8",  "utf-8" or "utf8" is found in	the LC_ALL, LC_TYPE or
       LANG environment	variables, then	the default character set is utf-8.

       If that string is not found, but	your  system  supports	the  setlocale
       interface,  less	 will  use  setlocale  to determine the	character set.
       setlocale is controlled by setting the  LANG  or	 LC_CTYPE  environment
       variables.

       Finally,	 if the	setlocale interface is also not	available, the default
       character set is	latin1.

       Control and  binary  characters	are  displayed	in  standout  (reverse
       video).	Each such character is displayed in caret notation if possible
       (e.g. ^A	for control-A).	 Caret notation	is used	only if	inverting  the
       0100 bit	results	in a normal printable character.  Otherwise, the char-
       acter is	displayed as a hex number in angle brackets.  This format  can
       be  changed by setting the LESSBINFMT environment variable.  LESSBINFMT
       may begin with a	"*" and	one character to select	the display attribute:
       "*k"  is	 blinking, "*d"	is bold, "*u" is underlined, "*s" is standout,
       and "*n"	is normal.  If LESSBINFMT does not begin with  a  "*",	normal
       attribute  is  assumed.	 The remainder of LESSBINFMT is	a string which
       may include one printf-style escape sequence (a % followed by x,	X,  o,
       d,  etc.).   For	 example, if LESSBINFMT	is "*u[%x]", binary characters
       are displayed in	underlined hexadecimal surrounded  by  brackets.   The
       default	if  no LESSBINFMT is specified is "*s<%X>".  The default if no
       LESSBINFMT is specified is "*s<%02X>".  Warning:	the result of  expand-
       ing the character via LESSBINFMT	must be	less than 31 characters.

       When the	character set is utf-8,	the LESSUTFBINFMT environment variable
       acts similarly to LESSBINFMT but	it applies to Unicode code points that
       were  successfully  decoded but are unsuitable for display (e.g., unas-
       signed code points).  Its default  value	 is  "<U+%04lX>".   Note  that
       LESSUTFBINFMT  and  LESSBINFMT  share  their  display attribute setting
       ("*x") so specifying one	will affect both; LESSUTFBINFMT	is read	 after
       LESSBINFMT  so  its  setting,  if any, will have	priority.  Problematic
       octets in a UTF-8 file (octets of a truncated  sequence,	 octets	 of  a
       complete	 but  non-shortest  form  sequence,  illegal octets, and stray
       trailing	octets)	are displayed individually using LESSBINFMT so	as  to
       facilitate diagnostic of	how the	UTF-8 file is ill-formed.

PROMPTS
       The  -P option allows you to tailor the prompt to your preference.  The
       string given to the -P option replaces  the  specified  prompt  string.
       Certain characters in the string	are interpreted	specially.  The	prompt
       mechanism is rather complicated to provide flexibility, but  the	 ordi-
       nary  user need not understand the details of constructing personalized
       prompt strings.

       A percent sign followed by a single character is	expanded according  to
       what the	following character is:

       %bX    Replaced	by the byte offset into	the current input file.	 The b
	      is followed by a single character	(shown as X above) which spec-
	      ifies  the line whose byte offset	is to be used.	If the charac-
	      ter is a "t", the	byte offset of the top line in the display  is
	      used, an "m" means use the middle	line, a	"b" means use the bot-
	      tom line,	a "B" means use	the line just after the	 bottom	 line,
	      and  a  "j"  means use the "target" line,	as specified by	the -j
	      option.

       %B     Replaced by the size of the current input	file.

       %c     Replaced by the column number of the text	appearing in the first
	      column of	the screen.

       %dX    Replaced	by  the	 page number of	a line in the input file.  The
	      line to be used is determined by the X, as with the %b option.

       %D     Replaced by the number of	pages in the input  file,  or  equiva-
	      lently, the page number of the last line in the input file.

       %E     Replaced	by the name of the editor (from	the VISUAL environment
	      variable,	or the EDITOR environment variable if  VISUAL  is  not
	      defined).	 See the discussion of the LESSEDIT feature below.

       %f     Replaced by the name of the current input	file.

       %i     Replaced	by  the	index of the current file in the list of input
	      files.

       %lX    Replaced by the line number of a line in the  input  file.   The
	      line to be used is determined by the X, as with the %b option.

       %L     Replaced	by the line number of the last line in the input file.

       %m     Replaced by the total number of input files.

       %pX    Replaced by the percent into the current input  file,  based  on
	      byte  offsets.  The line used is determined by the X as with the
	      %b option.

       %PX    Replaced by the percent into the current input  file,  based  on
	      line  numbers.  The line used is determined by the X as with the
	      %b option.

       %s     Same as %B.

       %t     Causes any trailing spaces to be removed.	 Usually used  at  the
	      end of the string, but may appear	anywhere.

       %x     Replaced by the name of the next input file in the list.

       If any item is unknown (for example, the	file size if input is a	pipe),
       a question mark is printed instead.

       The format of the prompt	string can be  changed	depending  on  certain
       conditions.   A	question mark followed by a single character acts like
       an "IF":	depending on the following character, a	 condition  is	evalu-
       ated.   If the condition	is true, any characters	following the question
       mark and	condition character, up	to  a  period,	are  included  in  the
       prompt.	 If  the condition is false, such characters are not included.
       A colon appearing between the question mark and the period can be  used
       to establish an "ELSE": any characters between the colon	and the	period
       are included in the string if and only if the IF	 condition  is	false.
       Condition characters (which follow a question mark) may be:

       ?a     True  if any characters have been	included in the	prompt so far.

       ?bX    True if the byte offset of the specified line is known.

       ?B     True if the size of current input	file is	known.

       ?c     True if the text is horizontally shifted (%c is not zero).

       ?dX    True if the page number of the specified line is known.

       ?e     True if at end-of-file.

       ?f     True if there is an input	filename (that is, if input is	not  a
	      pipe).

       ?lX    True if the line number of the specified line is known.

       ?L     True if the line number of the last line in the file is known.

       ?m     True if there is more than one input file.

       ?n     True if this is the first	prompt in a new	input file.

       ?pX    True  if	the percent into the current input file, based on byte
	      offsets, of the specified	line is	known.

       ?PX    True if the percent into the current input file, based  on  line
	      numbers, of the specified	line is	known.

       ?s     Same as "?B".

       ?x     True  if	there  is  a  next input file (that is,	if the current
	      input file is not	the last one).

       Any characters other than  the  special	ones  (question	 mark,	colon,
       period,	percent,  and  backslash) become literally part	of the prompt.
       Any of the special characters may be included in	the  prompt  literally
       by preceding it with a backslash.

       Some examples:

       ?f%f:Standard input.

       This  prompt prints the filename, if known; otherwise the string	"Stan-
       dard input".

       ?f%f .?ltLine %lt:?pt%pt\%:?btByte %bt:-...

       This prompt would print the filename, if	known.	The filename  is  fol-
       lowed  by  the  line  number, if	known, otherwise the percent if	known,
       otherwise the byte offset if known.   Otherwise,	 a  dash  is  printed.
       Notice  how  each  question  mark  has a	matching period, and how the %
       after the %pt is	included literally by escaping it with a backslash.

       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t

       This prints the filename	if this	is the first prompt in	a  file,  fol-
       lowed  by  the  "file  N	 of N" message if there	is more	than one input
       file.  Then, if we are at end-of-file, the string  "(END)"  is  printed
       followed	 by  the name of the next file,	if there is one.  Finally, any
       trailing	spaces are truncated.  This is the default prompt.  For	refer-
       ence,  here  are	 the  defaults	for  the  other	two prompts (-m	and -M
       respectively).  Each is broken into  two	 lines	here  for  readability
       only.

       ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.:
	    ?pB%pB\%:byte %bB?s/%s...%t

       ?f%f .?n?m(file %i of %m) ..?ltlines %lt-%lb?L/%L. :
	    byte %bB?s/%s. .?e(END) ?x-	Next\: %x.:?pB%pB\%..%t

       And here	is the default message produced	by the = command:

       ?f%f .?m(file %i	of %m) .?ltlines %lt-%lb?L/%L. .
	    byte %bB?s/%s. ?e(END) :?pB%pB\%..%t

       The  prompt expansion features are also used for	another	purpose: if an
       environment variable LESSEDIT is	defined, it is used as the command  to
       be  executed  when  the	v  command is invoked.	The LESSEDIT string is
       expanded	in the same way	as the prompt strings.	The default value  for
       LESSEDIT	is:

	    %E ?lm+%lm.	%f

       Note that this expands to the editor name, followed by a	+ and the line
       number, followed	by the file name.  If your editor does not accept  the
       "+linenumber"  syntax,  or  has other differences in invocation syntax,
       the LESSEDIT variable can be changed to modify this default.

SECURITY
       When the	environment variable LESSSECURE	is set to 1, less  runs	 in  a
       "secure"	mode.  This means these	features are disabled:

	      !	     the shell command

	      |	     the pipe command

	      :e     the examine command.

	      v	     the editing command

	      s	 -o  log files

	      -k     use of lesskey files

	      -t     use of tags files

		     metacharacters in filenames, such as *

		     filename completion (TAB, ^L)

       Less can	also be	compiled to be permanently in "secure" mode.

COMPATIBILITY WITH MORE
       If the environment variable LESS_IS_MORE	is set to 1, or	if the program
       is invoked via a	file link named	"more",	less behaves (mostly) in  con-
       formance	 with  the  POSIX "more" command specification.	 In this mode,
       less behaves differently	in these ways:

       The -e option works differently.	 If the	-e option  is  not  set,  less
       behaves	as  if	the -E option were set.	 If the	-e option is set, less
       behaves as if the -e and	-F options were	set.

       The -m option works differently.	 If the	-m  option  is	not  set,  the
       medium  prompt  is used,	and it is prefixed with	the string "--More--".
       If the -m option	is set,	the short prompt is used.

       The -n option acts like the -z option.  The normal behavior of  the  -n
       option is unavailable in	this mode.

       The  parameter  to  the	-p option is taken to be a less	command	rather
       than a search pattern.

       The LESS	environment variable is	 ignored,  and	the  MORE  environment
       variable	is used	in its place.

ENVIRONMENT VARIABLES
       Environment variables may be specified either in	the system environment
       as usual, or in a lesskey  (1)  file.   If  environment	variables  are
       defined	in  more  than one place, variables defined in a local lesskey
       file take precedence over variables defined in the system  environment,
       which take precedence over variables defined in the system-wide lesskey
       file.

       COLUMNS
	      Sets the number of columns on the	screen.	 Takes precedence over
	      the  number  of columns specified	by the TERM variable.  (But if
	      you  have	 a  windowing  system  which  supports	TIOCGWINSZ  or
	      WIOCGETD,	 the  window  system's	idea  of the screen size takes
	      precedence over the LINES	and COLUMNS environment	variables.)

       EDITOR The name of the editor (used for the v command).

       HOME   Name of the user's home directory	(used to find a	 lesskey  file
	      on Unix and OS/2 systems).

       HOMEDRIVE, HOMEPATH
	      Concatenation  of	 the  HOMEDRIVE	and HOMEPATH environment vari-
	      ables is the name	of the user's home directory if	the HOME vari-
	      able is not set (only in the Windows version).

       INIT   Name  of	the user's init	directory (used	to find	a lesskey file
	      on OS/2 systems).

       LANG   Language for determining the character set.

       LC_CTYPE
	      Language for determining the character set.

       LESS   Options which are	passed to less automatically.

       LESSANSIENDCHARS
	      Characters which may end an ANSI color escape sequence  (default
	      "m").

       LESSANSIMIDCHARS
	      Characters  which	 may  appear between the ESC character and the
	      end  character  in  an  ANSI  color  escape  sequence   (default
	      "0123456789;[?!"'#%()*+ ".

       LESSBINFMT
	      Format for displaying non-printable, non-control characters.

       LESSCHARDEF
	      Defines a	character set.

       LESSCHARSET
	      Selects a	predefined character set.

       LESSCLOSE
	      Command line to invoke the (optional) input-postprocessor.

       LESSECHO
	      Name of the lessecho program (default "lessecho").  The lessecho
	      program is needed	to expand metacharacters, such as * and	?,  in
	      filenames	on Unix	systems.

       LESSEDIT
	      Editor  prototype	 string	(used for the v	command).  See discus-
	      sion under PROMPTS.

       LESSGLOBALTAGS
	      Name of the command used by the -t option	to find	 global	 tags.
	      Normally should be set to	"global" if your system	has the	global
	      (1) command.  If not set,	global tags are	not used.

       LESSHISTFILE
	      Name of the history file used to remember	 search	 commands  and
	      shell  commands  between	invocations of less.  If set to	"-" or
	      "/dev/null", a  history  file  is	 not  used.   The  default  is
	      "$HOME/.lesshst"	on  Unix  systems, "$HOME/_lesshst" on DOS and
	      Windows systems, or "$HOME/lesshst.ini"  or  "$INIT/lesshst.ini"
	      on OS/2 systems.

       LESSHISTSIZE
	      The maximum number of commands to	save in	the history file.  The
	      default is 100.

       LESSKEY
	      Name of the default lesskey(1) file.

       LESSKEY_SYSTEM
	      Name of the default system-wide lesskey(1) file.

       LESSMETACHARS
	      List of characters which are considered "metacharacters" by  the
	      shell.

       LESSMETAESCAPE
	      Prefix  which  less will add before each metacharacter in	a com-
	      mand sent	to the shell.  If LESSMETAESCAPE is an	empty  string,
	      commands	containing  metacharacters  will  not be passed	to the
	      shell.

       LESSOPEN
	      Command line to invoke the (optional) input-preprocessor.

       LESSSECURE
	      Runs less	in "secure" mode.  See discussion under	SECURITY.

       LESSSEPARATOR
	      String to	be appended to a directory name	 in  filename  comple-
	      tion.

       LESSUTFBINFMT
	      Format for displaying non-printable Unicode code points.

       LESS_IS_MORE
	      Emulate the more (1) command.

       LINES  Sets  the	 number	of lines on the	screen.	 Takes precedence over
	      the number of lines specified by the TERM	variable.  (But	if you
	      have  a  windowing system	which supports TIOCGWINSZ or WIOCGETD,
	      the window system's idea of the  screen  size  takes  precedence
	      over the LINES and COLUMNS environment variables.)

       PATH   User's  search  path  (used to find a lesskey file on MS-DOS and
	      OS/2 systems).

       SHELL  The shell	used to	execute	the ! command, as well	as  to	expand
	      filenames.

       TERM   The type of terminal on which less is being run.

       VISUAL The name of the editor (used for the v command).

SEE ALSO
       lesskey(1)

COPYRIGHT
       Copyright (C) 1984-2009	Mark Nudelman

       less  is	 part of the GNU project and is	free software.	You can	redis-
       tribute it and/or modify	it under the terms of either (1) the GNU  Gen-
       eral  Public  License  as published by the Free Software	Foundation; or
       (2) the Less License.  See the file README in the less distribution for
       more details regarding redistribution.  You should have received	a copy
       of the GNU General Public License along with the	source for  less;  see
       the  file  COPYING.   If	not, write to the Free Software	Foundation, 59
       Temple Place, Suite 330,	Boston,	MA  02111-1307,	USA.  You should  also
       have received a copy of the Less	License; see the file LICENSE.

       less is distributed in the hope that it will be useful, but WITHOUT ANY
       WARRANTY; without even the implied warranty of MERCHANTABILITY or  FIT-
       NESS  FOR A PARTICULAR PURPOSE.	See the	GNU General Public License for
       more details.

AUTHOR
       Mark Nudelman <markn@greenwoodsoftware.com>
       See http://www.greenwoodsoftware.com/less/bugs.html for the latest list
       of known	bugs in	less.
       Send bug	reports	or comments to the above address or to
       bug-less@gnu.org.
       For more	information, see the less homepage at
       http://www.greenwoodsoftware.com/less.

			   Version 436:	07 Jul 2009		       LESS(1)

NAME | SYNOPSIS | DESCRIPTION | COMMANDS | OPTIONS | LINE EDITING | KEY BINDINGS | INPUT PREPROCESSOR | NATIONAL CHARACTER SETS | PROMPTS | SECURITY | COMPATIBILITY WITH MORE | ENVIRONMENT VARIABLES | SEE ALSO | COPYRIGHT | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=less&sektion=1&manpath=FreeBSD+7.4-RELEASE>

home | help