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;
(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;