在linux shell中使用for遍历产生的递增数字序列的N种方法

来源:互联网 发布:反arp攻击软件 编辑:程序博客网 时间:2024/06/07 07:56

使用seq产生

1
2
3
fori in`seq1 100`;do
echo$i
done

使用条件循环

1
2
3
for((i=1;i<100;i++));do
echo$i
done

使用while循环

1
2
3
4
5
i=1
while(($i<100));do
echo$i
i=`expr$i + 1`
done

i=`expr $i + 1`还可以改为i=$(($i+1))加快运算速度(看shell支持与否)

最慢的方法

1
2
3
fori in{1..100};do
echo$i
done

实例 批量添加路由表:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
#print the route rulers for cczu
#to make this take effect ,pass it to shell with a pipe
#eg: route-cczu.sh |sh
#via:ihipop@gmail.com
igw=219.230.149.1
 
forip in {144..159};do
echoroute add -net 219.230.$ip.0 netmask 255.255.255.0 gw $igw dev eth0
done
 
forip in {65..70};do
echoroute add -net 211.65.$ip.0 netmask 255.255.255.0 gw $igw dev eth0
done
 
forip in`seq1 65`;do
echoroute add -host 211.65.64.$ip gw $igw dev eth0
done
 
for((ip=16;ip<=20;ip++));do
echoroute add -net 172.$ip.0.0 netmask 255.255.0.0 gw $igw dev eth0
done

chmod +x route-cczu.sh

./route-cczu.sh |sh

--本篇文章转自:在linux shell中使用for遍历产生的递增数字序列的N种方法 

0 0
原创粉丝点击