Bash for: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 8: | Line 8: | ||
=Overview= | =Overview= | ||
The <tt>for</tt> built-in command expand ''words'', and execute ''commands'' once for each member in the resultant list, with ''name'' bound to the current member. | |||
<pre> | |||
for name in words; do commands; done | |||
</pre> | |||
If `in words' is not present, the for command executes the commands once for each positional parameter that is set, as if `in "$@"' had been specified (see Positional Parameters below.) | |||
{{{ | {{{ |
Revision as of 23:51, 29 February 2016
External
Internal
Overview
The for built-in command expand words, and execute commands once for each member in the resultant list, with name bound to the current member.
for name in words; do commands; done
If `in words' is not present, the for command executes the commands once for each positional parameter that is set, as if `in "$@"' had been specified (see Positional Parameters below.)
{{{
for i in words; do commands; done
}}}
If the keyword "in" is not present, Template:For will iterate through positional parameters.
Alternative form:
{{{
for (( i=0; i<${#names[@]}; i++ )); do local name=${names[${i}]} echo "${name}" done
}}}
!!!Iterating through $1, $2, $3 ...
{{{
for i do echo ${i} done
}}}
!!!Iterating through a space separated list
{{{
s="a b c"
for i in ${s} do echo ${i} done
}}}
or
{{{
s="a b c"
for i in ${s}; do echo ${i}; done
}}}
Note the use of ";"
__Referenced by:__\\
[{INSERT com.ecyrd.jspwiki.plugin.ReferringPagesPlugin WHERE max=20, maxwidth=50}]