I'm working on Solaris 10, using bash. Want to change default pager from "more" to "less" (because "less is more" :). Tried to do the following:
PAGER=less
PS. When I do it in csh via
setenv PAGER less
then it works
Your
PAGER=less
sets the shell variable PAGER to the value less. For man (or anything other than the current shell) to see this, you will have to additionally make PAGER an environment variable. You do this with export, either through
PAGER=less
export PAGER
or
export PAGER=less
A shell variable is "exported into the environment" with export. This is the same in all sh-like shells. Exporting a variable in this way is the corollary to the csh/tcsh setenv command.
MANPAGER option which overrides PAGER for man, see man man for details askubuntu.com/questions/623992/…
man does not mention a MANPAGER environment variable. It does however mention PAGER.
man pager. Anyway I believe it won't harm anyone to mention that option for other Unix-based OSs.
lesssince the default is to usemore -s.lessseems to implement the same option. BTW: if you have an editor that allows you to exit a binary without destroing the binary, edit/usr/bin/manand replacenroff -u0bynroff -u1for better readable output. IIRC, there are three such strings in the binary.viis not usable.setenvsaying that it sets environment variables.cshI have more experience and still fighting my way throughbash. Up to now I was even thinking that Bash doesn't make a distinction between environment and any other variable.