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

  

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

  

在Linux中生成数字列表的最简单方法之一是使用seq(系列序列)命令。其最简单的形式是,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秒内生成一百万个数字的列表。

        时间seq 1000000美元   1   2   3.   …   …   999998年   999999   1000000   真正的0 m9.290s & lt;==9 +秒   用户0 m0.020s   sys 0 m0.899s      

<强>使用分隔符

  

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

  
  

$ 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 |
  120年

     

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

  
  

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

     

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

        seq - s * 117美元| bc   39699371608087208954019596294986306477904063601683223011297484643104 \   22041758630649341780708631240196854767624444057168110272995649603642 \   560353748940315749184568295424000000000000000000000000000   真正的0 m0.003s   用户0 m0.004s   sys 0 m0.000s      

<强>局限性

  

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

  
  

$回声{. .g}
  a b c d e g f

     

  

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

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