一个产生在Linux中号码列表的最简单的方法是使用以次(序列)命令。在最简单的形式,以次将采取单号,然后列出所有从1到这个数字的号码。例如:
$ SEQ 5 1 2 3 4 5
除非另有指示,否则以次始终从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
该以次命令也非常快。你也许可以产生一百万的数字在10秒的名单。
$时间SEQ百万1 2 3 ...... 999998个999999百万真实0m9.290s <== 9+秒用户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 -s * 5 |公元前120年
这是怎么回事这个命令?让我们来看看。第一,以次正在生成号的列表,并使用*作为分隔符。
$ SEQ -s * 5 1 * 2 * 3 * 4 * 5
它是那么的字符串传递给计算器(公元前),这迅速倍增的数字。你可以在几分之一秒内做了相当广泛的计算。
$时间序列-s * 117 |BC 39699371608087208954019596294986306477904063601683223011297484643104 \ 22041758630649341780708631240196854767624444057168110272995649603642 \ 560353748940315749184568295424000000000000000000000000000个真正0m0.003s用户0m0.004s SYS 0m0.000s
限制
你只有选择一个分隔符,所以你的计算将非常有限。采用公元前本身更复杂的数学运算。此外,以次只适用于数字。要生成的单字母序列,使用如下命令来代替:
$回波{a..g} A B C d E F G