shell中的for循环

1, for((i=1;i<=10;i++));  do 命令 ; done ;

   命令中使用变量i的时候需要用$进行引用。如:
    (1)for((i=1;i<=10;i++));  do touch "testfile_$i" ; done ;
    (2)for((i=1;i<=10;i++));  do touch testfile$i ; done ;
    其中do和done之间可以用多条命令,命令之间用分号分隔。如:
    for((i=1;i<=3;i++));do touch file$i;mv file$i xxx$i;done;

2, for i in $(seq 5 10); do 命令; done ;
    $(seq 5 10):相当于一个数组列表。$seq(10)的时候,相当于从1开始到10结束。
    其中命令使用到i的时候需要用$i,如:
    for i in $(seq 5 10); do echo $i; done ;

3,for i in `用命令获得一个数组`
     for i in `ls` ; do rm -rf $i;   done;
     用ls获得文件名数组,然后用rm实现逐个删除。

4,提取某些特征文件,存放在数组中,然后逐个提取,逐个操作
     for i in *.txt ;  do echo $i;  done;

5,具体设置文件名列表,然后对每个文件操作
    for i in ys.txt sum.txt;   do 命令 $i;  done;

6,提前构造空格分隔的字符串,并且存放到环境变量中,然后在环境变量中逐个提取
     LIST="ABC BDE MMF"
     for i in $LIST;  do echo $i   ;done;

7,不用提前构造字符串环境变量,直接使用各个字符串
     for i in abc efg pky;   do echo $i;    done;
 
posted @ 2017-09-18 15:33  Hsinwang  阅读(1444)  评论(0编辑  收藏  举报