"input preprocessor" for less.
This manual page documents briefly the lessfile, and lesspipe commands. This manual page was written for the Debian GNU/Linux distribution be‐ cause 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. ~/.bash_profile): eval "$(lessfile)" or 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): *.a *.arj *.tar.bz2 *.bz *.bz2 *.deb, *.udeb, *.ddeb *.doc *.gif, *.jpeg, *.jpg, *.pcd, *.png, *.tga, *.tiff, *.tif *.iso, *.raw, *.bin *.lha, *.lzh *.tar.lz, *.tlz *.lz *.7z *.pdf *.rar, *.r[0-9][0-9] *.rpm *.tar.gz, *.tgz, *.tar.z, *.tar.dz *.gz, *.z, *.dz *.tar *.tar.xz, *.xz *.jar, *.war, *.xpi, *.zip *.zoo
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: #!/bin/sh case "$1" in *.extension) extension-handler "$1" ;; *) # We don't handle this format. exit 1 esac # No further processing by lesspipe necessary exit 0
~/.lessfilter 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 an‐
swer of Mark Nudelman
This manual page was written by Thomas Schoepf