I had the same problem with my 7.2 system. The way I resolved it was to edit 
/etc/profile and comment out:

#if [ -x /usr/bin/lesspipe.sh ];then
#               export LESSOPEN="|/usr/bin/lesspipe.sh %s"
#fi

Your mileage may vary :)

-Al

On Friday 22 June 2001 13:51, Pierre Fortin wrote:
> Hi,
>
> Before I go digging into the sources, does anyone know the logic behind
> "less" being impacted by the contents of .bashrc...?
>
> If I add 'echo "foobar"' to my .bashrc, any attempt to "less <file>" gives
> only "foobar" as output instead of the expected contents of <file>.
>
> The env. vars are:
> $ for e in ${!LESS*}; do echo $e ${!e};done
> LESS -MM
> LESSKEY /etc/.less                 #doesn't exist
> LESSOPEN |/usr/bin/lesspipe.sh %s  #nothing weird here
>
> I've strace'd it and see this line:
>   pipe([5, 6])                            = 0
> (the numbers are not always 5 & 6) which is probably from the LESSOPEN
> pipe...
>
> I don't see less opening .bashrc or invoking it; but less somehow gets
> output from .bashrc...  What I can't determine yet is whether this "output"
> is from ..bashrc executing anew when less is run (most likely -- see
> below), or from a stale buffer somewhere...  I just can't imagine a
> scenario where less needs to either access .bashrc or get data from a
> non-user-specified pipe...   could this be a potential security hole...?
>
> The problem is even more confusing if I add some code to .bashrc; it gets
> executed when I invoke less, instead of displaying the requested file... 
> this would seem to indicate .bashrc is executed when less is invoked...
>
> This happens on both my LM7.2 machines; but not on the 8.0 one, though the
> latter has the same env. vars and the same pipe in strace output... but,
> the default .bashrc is different...
>
> Puzzling.
>
> Pierre

Reply via email to