[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

RE: bash question





-----Original Message-----
From:	fedora-list-bounces redhat com on behalf of Dario Lesca
Sent:	Wed 10/31/2007 09:12 AM
To:	Fedora Project List
Cc:	
Subject:	bash question

In this shell script:

> #!/bin/bash
> i=0
> 
> printf "a a a\nb b b\nc c c\n" |
> while read x
> do
>         i=$[i+1]
>         echo "$x: ($i)"
> done
> 
> echo $i

-------------------------------

By pipe'ing the commands together, you cause the while loop to be executed in a subshell. Change your script to be:

#!/bin/bash
i=0

while read x
do
         i=$[i+1]
         echo "$x: ($i)"
done << _EOF_
a a a
b b b
c c c
_EOF_

echo $i


<<winmail.dat>>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]