shell脚本常用函数和命令(6)seq 详解
seq命令用于产生从某个数到另外一个数之间的所有整数。
1)语法:
1.seq [选项]... 尾数
2.seq [选项]... 首数 尾数
3.seq [选项]... 首数 增量 尾数
-f, --format=格式 使用printf 样式的浮点格式
-s, --separator=字符串 使用指定字符串分隔数字(默认使用:\n)
-w, --equal-width 在列前添加0 使得宽度相同
2)实例:
1.-f选项:指定格式
[root@controller1 ~]# seq -f "%5g" 1 5
1
2
3
4
5
%后面指定数字的位数 默认是%g,%3g那么数字位数不足部分是空格。
[root@controller1 ~]# seq -f "num%05g" 1 5
num00001
num00002
num00003
num00004
num00005
这样的话数字位数不足部分是0,%前面制定字符串。
2.-w选项:自动补齐输出数字同宽
[root@controller1 ~]# seq -w 98 103
098
099
100
101
102
103
不能和-f一起用,输出是同宽的。
3.-s选项:指定分隔符(默认是回车)
[root@controller1 ~]# seq -s "+" 1 9
1+2+3+4+5+6+7+8+9
4.指定\t做为分隔符号
[root@controller1 ~]# seq -s "$(echo -e "\t")" 1 9
1 2 3 4 5 6 7 8 9
5.seq [选项]... 首数 增量 尾数
[root@controller1 dir001]# seq 0 5 20
0
5
10
15
20
6.循环数
[root@controller1 ~]#mkdir `seq -f "mydir%03g " 1 10`
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir001
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir002
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir003
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir004
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir005
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir006
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir007
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir008
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir009
seq命令用于产生从某个数到另外一个数之间的所有整数。
1)语法:
1.seq [选项]... 尾数
2.seq [选项]... 首数 尾数
3.seq [选项]... 首数 增量 尾数
-f, --format=格式 使用printf 样式的浮点格式
-s, --separator=字符串 使用指定字符串分隔数字(默认使用:\n)
-w, --equal-width 在列前添加0 使得宽度相同
2)实例:
1.-f选项:指定格式
[root@controller1 ~]# seq -f "%5g" 1 5
1
2
3
4
5
%后面指定数字的位数 默认是%g,%3g那么数字位数不足部分是空格。
[root@controller1 ~]# seq -f "num%05g" 1 5
num00001
num00002
num00003
num00004
num00005
这样的话数字位数不足部分是0,%前面制定字符串。
2.-w选项:自动补齐输出数字同宽
[root@controller1 ~]# seq -w 98 103
098
099
100
101
102
103
不能和-f一起用,输出是同宽的。
3.-s选项:指定分隔符(默认是回车)
[root@controller1 ~]# seq -s "+" 1 9
1+2+3+4+5+6+7+8+9
4.指定\t做为分隔符号
[root@controller1 ~]# seq -s "$(echo -e "\t")" 1 9
1 2 3 4 5 6 7 8 9
5.seq [选项]... 首数 增量 尾数
[root@controller1 dir001]# seq 0 5 20
0
5
10
15
20
6.循环数
[root@controller1 ~]#mkdir `seq -f "mydir%03g " 1 10`
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir001
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir002
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir003
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir004
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir005
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir006
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir007
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir008
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir009
drwxr-xr-x 2 root root 6 Jun 28 16:47 mydir010