首页 > 其他 > 详细

shell中的for循环

时间:2014-04-25 22:01:15      阅读:581      评论:0      收藏:0      [点我收藏+]

 

一、类似于C语言的步长控制

例如:

for ((i=1;i<=10;i++)); do echo $(expr $i \* 4 ); done 

将1到10,依次乘以4,然后打印出来。

这里顺便提一下,shell里面表达式的计算,可以有其他形式:

for ((i=1;i<=10;i++)); do echo $((i * 4)); done   
for ((i=1;i<=10;i++)); do echo $[i * 4 ]; done          

 

 

 

二、类似于python的迭代序列

 

比如遍历一个数组:

a=(1 3 5 7 9 11)

for v in ${a[*]}; do
    echo $v
done

 

上面这段代码可以用seq命令简化:

 for i in $(seq 1 2 11) ;do echo $i ;done 

 

打印出所有小写字母:

for i in {a..z} ;do echo $i ;done  

 

遍历脚本参数:

for i in $* ; do
    echo $i
done

 

遍历当前目录下所有以.txt结尾的文件:

for f in $(ls *.txt); do
    echo $f
done

可以简化为:

for f in *.txt; do
    echo $f
done

 

另外,for...in循环会对字符串按空格分隔进行遍历:

str="hello world how do you do!"

for i in $str; do
    echo $i ;
done

 

 

 

 

 

 

shell中的for循环,布布扣,bubuko.com

shell中的for循环

原文:http://www.cnblogs.com/chenny7/p/3687622.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!