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}'
posted @ 2021-03-29 14:36  临江仙我亦是行人  阅读(252)  评论(0编辑  收藏  举报