使用 Linux seq 命令生成数字序列(推荐)

 更新时间:2020年01月15日 16:15:11   作者:Sandra Henry-stocker  
seq命令用于以指定增量从首数开始打印数字到尾数,即产生从某个数到另外一个数之间的所有整数,并且可以对整数的格式、宽度、分割符号进行控制。这篇文章主要介绍了使用 Linux seq 命令生成数字序列,需要的朋友可以参考下

Linux 的 seq 命令可以以闪电般的速度生成数字列表,而且它也易于使用而且灵活。

在 Linux 中生成数字列表的最简单方法之一是使用 seq(系列sequence)命令。其最简单的形式是,seq 接收一个数字参数,并输出从 1 到该数字的列表。例如:

$ seq 5
1
2
3
4
5

除非另有指定,否则 seq 始终以 1 开头。你可以在最终数字前面插上不同数字开始一个序列。

$ seq 3 5
3
4
5

指定增量

你还可以指定增量步幅。假设你要列出 3 的倍数。指定起点(在此示例中为第一个 3 ),增量(第二个 3)和终点(18)。

$ seq 3 3 18
3
6
9
12
15
18

你可以选择使用负增量(即减量)将数字从大变小。

$ seq 18 -3 3
18
15
12
9
6
3

seq 命令也非常快。你或许可以在 10 秒内生成一百万个数字的列表。

$ time seq 1000000
1
2
3
…
…
999998
999999
1000000
real  0m9.290s <== 9+ seconds
user  0m0.020s
sys   0m0.899s

使用分隔符

另一个非常有用的选项是使用分隔符。你可以插入逗号、冒号或其他一些字符,而不是在每行上列出单个数字。-s 选项后跟要使用的字符。

$ seq -s: 3 3 18
3:6:9:12:15:18

实际上,如果只是希望将数字列在一行上,那么可以使用空格代替默认的换行符。

$ seq -s' '  3 3 18
3 6 9 12 15 18

开始数学运算

从生成数字序列到进行数学运算似乎是一个巨大的飞跃,但是有了正确的分隔符,seq 可以轻松地传递给 bc 进行计算。例如:

$ seq -s* 5 | bc
120

该命令中发生了什么?让我们来看看。首先,seq 生成一个数字列表,并使用 * 作为分隔符。

$ seq -s* 5
1*2*3*4*5

然后,它将字符串传递给计算器(bc),计算器立即将数字相乘。你可以在不到一秒的时间内进行相当庞大的计算。

$ time seq -s* 117 | bc
39699371608087208954019596294986306477904063601683223011297484643104\
22041758630649341780708631240196854767624444057168110272995649603642\
560353748940315749184568295424000000000000000000000000000
real  0m0.003s
user  0m0.004s
sys   0m0.000s

局限性

你只能选择一个分隔符,因此计算将非常有限。而单独使用 bc 可进行更复杂的数学运算。此外,seq 仅适用于数字。要生成单个字母的序列,请改用如下命令:

$ echo {a..g}
a b c d e f g

总结

以上所述是小编给大家介绍的使用 Linux seq 命令生成数字序列,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • Linux中如何修改~/.bashrc或/etc/profile设置环境变量

    Linux中如何修改~/.bashrc或/etc/profile设置环境变量

    这篇文章主要介绍了Linux中如何修改~/.bashrc或/etc/profile设置环境变量问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Ubuntu 安装Eclipse 菜单无法使用解决办法

    Ubuntu 安装Eclipse 菜单无法使用解决办法

    这篇文章主要介绍了Ubuntu 安装Eclipse 菜单无法使用解决办法的相关资料,需要的朋友可以参考下
    2017-03-03
  • 详解Linux查看实时网卡流量的几种方式

    详解Linux查看实时网卡流量的几种方式

    本篇文章中主要介绍了详解Linux查看实时网卡流量的几种方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 详解CentOS7下PostgreSQL 11的安装和配置教程

    详解CentOS7下PostgreSQL 11的安装和配置教程

    这篇文章主要介绍了CentOS7下PostgreSQL 11的安装和配置教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • Ubuntu下安装nvidia显卡驱动(安装方式简单)

    Ubuntu下安装nvidia显卡驱动(安装方式简单)

    这篇文章主要介绍了Ubuntu下安装nvidia显卡驱动,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • Ubuntu16.04 中 locate文件查找命令

    Ubuntu16.04 中 locate文件查找命令

    这篇文章主要介绍了Ubuntu16.04 中 locate文件查找命令,需要的朋友可以参考下
    2018-06-06
  • Linux编译器--gcc/g++使用方式

    Linux编译器--gcc/g++使用方式

    文章主要介绍了C/C++程序的编译过程,包括预编译、编译、汇编和链接四个阶段,并详细解释了每个阶段的作用和具体操作,同时,还介绍了调试和发布版本的概念
    2025-02-02
  • Linux统计某个字符串出现次数并排序的实现步骤

    Linux统计某个字符串出现次数并排序的实现步骤

    最近遇到一个流量异常调用的接口,所以需要通过后台日志查看接口调用情况,先统计今天内接口的调用次数,再具体到对应的设备号,所以本文给大家介绍了Linux统计某个字符串出现次数并排序的实现步骤,需要的朋友可以参考下
    2024-07-07
  • Linux中僵尸进程和孤儿进程详解

    Linux中僵尸进程和孤儿进程详解

    早就了解孤儿进程与僵尸进程,但仅仅是停留在一知半解的程度,最近正好有空就顺便学习一下,下面这篇文章主要给大家介绍了关于Linux中僵尸进程和孤儿进程的相关资料,文中介绍的非常详细,需要的朋友可以参考下。
    2017-06-06
  • Linux使用vmstat监控系统性能的示例方法

    Linux使用vmstat监控系统性能的示例方法

    vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况,本文给大家介绍了Linux使用vmstat监控系统性能的示例方法,需要的朋友可以参考下
    2025-03-03

最新评论