seq 命令用法
以指定增量从首数开始打印数字到尾数。
用法:
seq [选项]... 尾数
或:seq [选项]... 首数 尾数
或:seq [选项]... 首数 增量 尾数
选项:
-
-f, --format=格式化输出,使用printf 样式的浮点格式
-
-s, --separator=字符串使用指定字符串分隔数字,默认是换行
[root@centos /]#seq -s+ 100 | bc
5050
[root@centos /]#s=0;for i in {1..100};do ((s=s+$i));done;echo $s
5050
[root@centos /]#
-
-w, --equal-width 等位补全,就是宽度相等,不足的前面补 0
-
--help 显示此帮助信息并退出
-
--version 显示版本信息并退出
如果省略了首数或者增量,则默认其值为 1,即使这样尾数仍小于首数。
首数、增量和尾数均以浮点数形式解释。当首数小于尾数时增量一般为正值,
相反在首数大于尾数时增量一般为负数。
指定的格式必须适用于显示 "double" 类型的参数;当首数、增量和尾数均为指定
精确度的定点十进制数时默认为 "%.精确度f",否则默认为 "%g"。
示例
指定分隔符为空格,起始为10
for i in $(seq -s " " 10 15);do echo $i;done
# 生成连续字符
$ seq -s '#' 10 |sed -e 's/[0-9]*//g'
#########
步长
for i in $(seq 10 -1 2);do echo $i;done
-w:补齐
for i in $(seq -w 10);do echo $i;done
生成连续数组
[@sjs_115_196 search]# arr=($(seq 1 3 10))
[@sjs_115_196 search]# echo ${arr[1]}
4
[@sjs_115_196 search]# echo ${arr[@]}
1 4 7 10
[@sjs_115_196 search]#
从1循环到10的两种方法
for i in {1..10};do echo $i;done
for i in $(seq 10);do echo $i;done
输出1-100中,不包含数字7,且不能被7整除的数
[@sjs_115_196 search]# seq 100|grep -v 7|awk '$0%7!=0{print}'