Chinaunix首页 | 论坛 | 博客
  • 博客访问: 249666
  • 博文数量: 49
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1334
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-14 08:53
个人简介

勤于思考,默默学习。

文章分类

全部博文(49)

文章存档

2017年(1)

2016年(2)

2015年(1)

2014年(45)

我的朋友

分类: 系统运维

2014-03-16 15:57:22

for循环结构可以重复执行一个命令列表,基于for语句中所指定的值列表决定是继续循环还是跳出循环。for循环执行命令列表前会检查值列表中是否还有未被使用的值,如有则把该值赋给for语句中指定的变量,然后执行循环结构中的命令列表。如此循环,直到值列表中的所有值都被使用。
语法结构(如下):
for 变量名 in 值列表
do
命令1
命令2
......
done
例1:以常量作为值列表
[root@localhost for]# cat for1.sh 
#!/bin/bash
for n in 1 2 3 4 5
do
echo $n
done
[root@localhost for]# sh for1.sh 
1
2
3
4
5
例2:以变量作为值列表
[root@localhost for]# cat for2.sh 
#!/bin/bash
values='1 2 3 4 5'
for n in $values
do
echo $n
done
[root@localhost for]# sh for2.sh 
1
2
3
4
5
例3:以命令运行的结果作为值列表
注意:shell支持使用命令的运行结果作为for循环的值列表,在shell中通过“`命令`”或者“$(命令)”来引用命令的运行结果。
[root@localhost for]# cat for3.sh 
#!/bin/bash
for n in `ls`                                    //循环读取ls命令的输出结果
do
echo $n                                         //输出变量n的值
done
该脚本会以ls命令的结果作为值列表,运行脚本如下:
[root@localhost for]# sh for3.sh 
for1.sh
for2.sh
for3.sh
阅读(1703) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~