Why not use the fourth form? It lends itself much more nicely to
programmatic assignment...

On Thu, Jul 2, 2009 at 10:15 PM, Blues Renegade <[email protected]>wrote:

>
>
> I know of 4 different ways to use a for loop. Here they are for those
> that aren't aware of all 4 ways.
>
> |1. for I in {1..10}; do echo $I; done|
>
> |2. for I in 1 2 3 4 5 6 7 8 9 10; do echo $I; done|
>
> |3. for I in $(seq 1 10); do echo $I; done|
>
> |4. for ((I=1; I <= 10 ; I++)); do echo $I; done
> |
> That being said, I have a script I'm trying to modify to use a variable
> instead of a fixed hard-coded value, using the 1st form of the for
> loop.  I've tried all different ways of quoting and escaping the
> variable, and the main problem is that the quoting chars or escape char
> are beinh translated and passed into the loop as well as the value
> stored in the variable.
>
> For example, to change the start value of 1 to whatever value I want
> passed in thru a variable:
>
> for i in {1..100}; do <something>; done
>
> to:     for i in {$a..10}; do <something>; done
>
> I have tried: {{$a}..10} and {`$a`..10}, to have the variable evaluated
> first.
> I have tried the using the eval() function.
> I have tried single and double quotes and the backslash escape character.
>
> Nothing I've tried works. Yes, maybe I should try using a different form
> of the for loop, but it bugs me that I can't get this form of the for to
> work properly.  It's probably a stupid syntax error on my part, but as
> of now, I'm baffled.
>
> Can anyone shed some light on the problem and solution, please?  Thanks!
>
> John
> |||
>
>
>
>
>
> |
>
> >
>


-- 

          Daniel

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Linux Users Group.
To post a message, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit our group at 
http://groups.google.com/group/linuxusersgroup
-~----------~----~----~----~------~----~------~--~---

Reply via email to