Quick ?s
Cheat Sheets
Man Pages
The Lynx
LESSOPEN(1)							   LESSOPEN(1)

       lessfile, lesspipe - "input preprocessor" for  less.

       lessfile, lesspipe

       This manual page documents briefly the lessfile, and lesspipe commands.
       This manual page was written  for  the  Debian  GNU/Linux  distribution
       because the input preprocessor scripts are provided by Debian GNU/Linux
       and are not part of the original program.

       lessfile and lesspipe are programs that can be used to modify  the  way
       the  contents of a file are displayed in less.  What this means is that
       less can automatically open up tar files, uncompress gzipped files, and
       even display something reasonable for graphics files.

       lesspipe  will toss the contents/info on STDOUT and less will read them
       as they come across.  This means that you do not have to wait  for  the
       decoding  to  finish  before  less shows you the file.  This also means
       that you will get a byte N instead of an N% as  your  file  position.
       You  can seek to the end and back to get the N% but that means you have
       to wait for the pipe to finish.

       lessfile will toss the contents/info on a file  which  less  will  then
       read.   After  you  are done, lessfile will then delete the file.  This
       means that the process has to finish before you see  it,  but  you  get
       nice percentages (N%) up front.

       Just  put  one of the following two commands in your login script (e.g.

	 eval "$(lessfile)"


	 eval "$(lesspipe)"

       File types are recognized by their extensions.  This is a list of  cur
       rently supported extensions (grouped by the programs that handle them):

	 *.deb, *.udeb
	 *.gif, *.jpeg, *.jpg, *.pcd, *.png, *.tga, *.tiff, *.tif
	 *.iso, *.raw, *.bin
	 *.lha, *.lzh
	 *.rar, *.r[0-9][0-9]
	 *.tar.gz, *.tgz, *.tar.z, *.tar.dz
	 *.gz, *.z, *.dz
	 *.jar, *.war, *.xpi, *.zip

       It is possible to extend and overwrite the default lesspipe  and  less
       file  input  processor  if you have specialized requirements. Create an
       executable program with the name .lessfilter and put it into your  home
       directory. This can be a shell script or a binary program.

       It is important that this program returns the correct exit code: return
       0  if  your  filter  handles  the  input,  return  1  if  the  standard
       lesspipe/lessfile filter should handle the input.

       Here is an example script:


	 case "$1" in
		 extension-handler "$1"
		 # We dont handle this format.
		 exit 1

	 # No further processing by lesspipe necessary
	 exit 0

	      Executable file that can do user defined processing. See section
	      USER DEFINED FILTERS for more information.

       When trying to open compressed 0 byte files, less displays  the	actual
       binary  file  contents. This is not a bug.  less is designed to do that
       (see manual page less(1), section INPUT	PREPROCESSOR).	 This  is  the
       answer of Mark Nudelman :

	      "I  recognized  when I designed it that a lesspipe filter cannot
	      output an empty file and have less display nothing in that case;
	      its  a  side  effect of using the "no output" case to mean "the
	      filter has nothing to do".  It could have been designed to  have
	      some  other  mechanism to indicate "nothing to do", but "no out
	      put" seemed the simplest and most intuitive for  lesspipe  writ

       Sometimes, less does not display the contents file you want to view but
       output  that  is  produced  by  your  login   scripts   (~/.bashrc   or
       ~/.bash_profile).  This happens because less uses your current shell to
       run the lesspipe filter. Bash first looks for the variable $BASH_ENV in
       the  environment  expands its value and	uses the expanded value as the
       name of a file to read and execute. If this file  produces  any	output
       less  will display this. A way to solve this problem is to put the fol
       lowing lines on the top of your login script that produces output:

	 if [ -z "$PS1" ]; then

       This tests whether the prompt variable $PS1 is  set  and  if  it  isnt
       (which is the case for non-interactive shells) it will exit the script.


       This manual page was written by	Thomas	Schoepf  ,
       for  the  Debian  GNU/Linux system (but may be used by others). Most of
       the text was copied  from  a  description  written  by  Darren  Stalder


Yals.net is © 1999-2009 Crescendo Communications
Sharing tech info on the web for more than a decade!
This page was generated Thu Apr 30 17:05:19 2009