概述
seq
命令可以用于产生从某个数到另外一个数之间的所有整数。seq
是 sequence
的缩写。
语法
该命令的语法如下:
# 输出从 1 到尾数之间的所有整数
seq + 选项 + 尾数
# 输出从首数开始到尾数结束的所有整数
seq + 选项 + 首数 + 尾数
# 输出从首数开始到尾数结束,每隔一个增量输出一个整数
seq + 选项 + 首数 + 增量 + 尾数
该命令支持的选项有:
选项 | 说明 |
---|---|
-f | 使用 printf 样式的浮点格式 |
-s | 使用指定字符串分隔数字,默认是换行符 |
-w | 在列前面加零,让数字等宽显示 |
使用
不带选项输出数字
例如:
# 输出 1 到 5 之间的所有整数
seq 5
# 输出 2 到 6 之间的所有整数
seq 2 6
# 输出 2 到 6 之间的所有整数,增量是 2
seq 2 2 6
指定分隔符
我们有时候并不想以换行符作为每个数字的分隔符,如果想要以其他字符作为分隔符,命令格式如下:
# 语法
seq -s 指定分隔符 [首数] [增量] 尾数
# 示例,以空格作为分隔符,输出 1 到 5 之间的所有整数
seq -s " " 5
注:如果要让它以制表符作为分隔符,需要这样写:
seq -s "`echo -e '\t'`" 5
指定输出格式
可以使用 -f
选项指定输出格式。默认格式是 %g
,%
后面表示的是数字的位数,如 %2g
表示两位输出,不足两位则默认补空格。语法格式如下:
# 语法
seq -f 指定输出格式 [首数] [增量] 尾数
# 示例,指定两位输出,不足两位则补空格
seq -f "%2g" 5
# 示例,指定两位输出,不足两位则补 0
seq -f "%02g" 5
# 示例,可以加入自定义字符串
seq -f "num: %02g" 5
# 示例,可以指定小数位数
seq -f "%.3f" 5
注:不能同
-w
选项一起使用,两者都是用来格式化的,会产生冲突。
指定输出数字等宽
还可以使用 -w
选项进行输出格式,让输出的数字等宽,默认补零。语法格式如下:
# 语法
seq -w [首数] [增量] 尾数