fortypoundhead.com

FOR

Posted On 2007-05-01 by FortyPoundHead
Keywords: Command Reference
Tags: Linux Commandline Linux
Views: 1513


Expand words, and execute commands once for each member in the resultant list, with name bound to the current member.

SYNTAX
for name [in words ...]; do commands; doneIf `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.)
The return status is the exit status of the last command that executes. If there are no items in the expansion of words, no commands are executed, and the return status is zero. An alternate form of the for command is also supported:
for (( expr1 ; expr2 ; expr3 )) ; do commands ; doneFirst, the arithmetic expression expr1 is evaluated according to shell arithmetic expression rules. The arithmetic expression expr2 is then evaluated repeatedly until it evaluates to zero.

Each time expr2 evaluates to a non-zero value, commands are executed and the arithmetic expression expr3 is evaluated. If any expression is omitted, it behaves as if it evaluates to 1.

The return value is the exit status of the last command in list that is executed, or false if any of the expressions is invalid.

Positional Parameters
These are assigned from the shell''s arguments when the shell is invoked, they can be reassigned using the set builtin command.
Positional parameter N may be referenced as ${N}, or as $N when N consists of a single digit. $1, $2 etc

Example

#! /bin/bash# List of manufacturersfor m in Apple Sony Panasonic "Hewlett Packard" Nokiado echo "Manufacturer is:" $mdone


# The above could also be written as a single line...
for m in Apple Sony Panasonic "Hewlett Packard" Nokia; do echo "Manufacturer is:" $m;done


About the Author

FortyPoundHead has posted a total of 1974 articles.

 


Comments On This Post

No comments on this post yet!


Do you have a thought relating to this post? You can post your comment here. If you have an unrelated question, you can use the Q&A section to ask it.

Or you can drop a note to the administrators if you're not sure where you should post.


Your IP address is:54.80.169.119

Before you can post, you need to prove you are human. If you log in, this test goes away.




Recent Forum Posts

Advanced search added
dwirch posted on September 23, 2017 at about 13:44 in Site News

Job Spammer: Gaurav Mehta - AgreeYa Solutions
dwirch posted on September 22, 2017 at about 10:35 in Spammers

Job Spammer: Prutha Siri - Javelin Systems
dwirch posted on September 10, 2017 at about 6:15 in Spammers

New security implemented
dwirch posted on September 7, 2017 at about 7:16 in Site News

Malicious IP Checker Companion Tool
dwirch posted on August 12, 2017 at about 20:24 in Site News

Job Spammer: Steve Adams
dwirch posted on August 8, 2017 at about 7:44 in Spammers