"Michal Nazarewicz" <mina86@tlen.pl> wrote in message
news:87r6z3d27r.fsf@erwin.piotrekn...
> "Doug Ritschel" <ritschel@optonline.net> writes:
>
> > i=0
> > echo "this is a test" | while read line; do
> > i = `expr $i + 1`
> > done
> > echo $i
>
> The while loop is run in a subshell and it has it's own local
> variables so changing them won't change the value of oryginal
> variable.
>
> In fact AFAIK the question was answered in FAQ.
>
>
Why, then , if I run the following, the echo prints 3, which is the number
of lines in the hosts file.
i=0
while read line; do
i = `expr $i + 1`
done < /etc/hosts
echo $i