MAN page from Other less-381-3sls.i586.rpm
LESSOPEN
Section: User Commands (1)
Index NAME
lessfile, lesspipe - "input preprocessor" for less.
SYNOPSIS
lessfile, lesspipe DESCRIPTION
This manual page documents briefly the
lessfile,and
lesspipecommands.This manual page was written for the Debian GNU/Linux distributionbecause the input preprocessor scripts are provided by Debian GNU/Linux andare not part of the original program.
lessfileandlesspipeare programs that can be used to modify the way the contents of a file aredisplayed inless.What this means is thatlesscan automatically openup tar files, uncompress gzipped files, and even display something reasonablefor graphics files.
lesspipewill toss the contents/info on STDOUT andlesswill read themas they come across. This means that you do not have to wait for thedecoding to finish before less shows you the file. This also means thatyou will get a 'byte N' instead of an N% as your file position. You canseek to the end and back to get the N% but that means you have to waitfor the pipe to finish.
lessfilewill toss the contents/info on a file whichlesswill thenread. After you are done,lessfilewill then delete the file. This means that the process has to finish beforeyou see it, but you get nice percentages (N%) up front.
USAGE
Just put one of the following two commands in your login script (e.g.~/.bash_profile):
eval $(lessfile)oreval $(lesspipe)
USER DEFINED FILTERS
It is possible to extend and overwrite the default
lesspipeand
lessfileinput processor if you have specialized requirements. Create an executableprogram with the name
.lessfilterand put it into your home directory. This can be a shell script or a binaryprogram.
It is important that this program returns the correct exit code: return 0 ifyour filter handles the input, return 1 if the standardlesspipe/lessfilefilter 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
FILES
- ~/.lessfilter
- Executable file that can do user defined processing. See section USER DEFINEDFILTERS for more information.
BUGS
When trying to open compressed 0 byte files,
lessdisplays the actual binary file contents. This is not a bug.
lessis designed to do that (see manual page
less(1), section INPUT PREPROCESSOR).This is the answer of Mark Nudelman <marknAATTgreenwoodsoftware.com>:
- "I recognized when I designed it that alesspipe filter cannot output an empty file and have less displaynothing in that case; it's a side effect of using the "no output" caseto mean "the filter has nothing to do". It could have been designed tohave some other mechanism to indicate "nothing to do", but "no output"seemed the simplest and most intuitive for lesspipe writers."
Sometimes, less does not display the contents file you want to view but outputthat is produced by your login scripts (~/.bashrc or ~/.bash_profile). Thishappens because less uses your current shell to run the lesspipe filter. Bashfirst looks for the variable $BASH_ENV in the environment expands its valueand uses the expanded value as the name of a file to read and execute. Ifthis file produces any output less will display this. A way to solve thisproblem is to put the following lines on the top of your login script thatproduces output:
if [ -z "$PS1" ]; then
exit
fi
This tests whether the prompt variable $PS1 is set and if it isn't (which isthe case for non-interactive shells) it will exit the script.
SEE ALSO
less(1)
AUTHOR
This manual page was written by Thomas Schoepf <schoepfAATTdebian.org>,for the Debian GNU/Linux system (but may be used by others). Most of thetext was copied from a description written by Darren Stalder <torinAATTdaft.com>.
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- USAGE
- USER DEFINED FILTERS
- FILES
- BUGS
- SEE ALSO
- AUTHOR
This document was created byman2html,using the manual pages.