自学内容网 自学内容网

【busybox记录】【shell指令】seq

目录

内容来源:

【GUN】【seq】指令介绍

【busybox】【seq】指令介绍

【linux】【seq】指令介绍

使用示例:

常用组合指令:

指令不常用/组合用法还需继续挖掘:


内容来源:

        GUN : Coreutils - GNU core utilities

        busybox v1.36.1 : 【busybox记录】【shell指令】基于的Busybox的版本和下载方式-CSDN博客

【GUN】【seq】指令介绍

seq:打印数字序列
seq 将一系列数字打印到标准输出。
简介:
seq [option]... last
seq [option]... first last
seq [option]... first increment last
seq从第一个到最后一个按增量打印数字。
默认情况下,每个数字打印在单独的一行上。
当没有指定 increment 时,它默认为' 1 ',即使第一个大于最后一个。
first 也默认为' 1 '。
因此,seq1输出' 1 ',但 seq 0 和 seq 10 5没有输出。
当当前数和增量的总和大于最后一个时,数字序列结束,因此 seq 1 10 10 只产生' 1 '。增量不能为' 0 ';
使用yes工具获得一个常数的重复输出。首先,increment 和 last 不能是 NaN ,但支持 inf。
浮点数可以在当前语言环境或C语言环境中指定。参见第10页第2.12节[浮点数]。
程序接受以下选项。请参见第2章[常用选项],第2页。
选项必须在操作数之前。
‘-f format’
‘--format=format’
使用格式打印所有数字。
格式必须包含' printf '样式的浮点转换规范 ‘%a’, ‘%e’, ‘%f’, ‘%g’, ‘%A’, ‘%E’, ‘%F’, '%G'中的一个。
'%' 后面可以跟0个或多个来自 ' -+#0 ' 集合的标志,然后是包含一个或多个数字的可选宽度,然后是由'.'组成的可选精度后面跟着零个或多个数字。
格式还可以包含任意数量的' %% '转换规范。所有转换规格与' printf '具有相同的含义。
默认格式由 first、step 和 last 派生。
如果这些都使用定点十进制表示,则默认格式为 ‘%.pf’, 其中p是精确表示输出数的最小精度。否则,默认格式为' %g '。
‘-s string’
‘--separator=string’
用字符串分隔数字;默认是换行符。输出总是以换行符结束。
‘-w’
‘--equal-width’
通过填充前导零,打印具有相同宽度的所有数字。
第一步、步骤和最后一步都应该使用定点十进制表示。(要使用其他类型的填充,请使用 --format)。

你可以使用-f对输出进行更细粒度的控制:
$ seq -f '(%9.2E)' -9e5 1.1e6 1.3e6
(-9.00E+05)
( 2.00E+05)
( 1.30E+06)

如果你想要十六进制的整数输出,你可以使用printf来执行转换:
$ printf '%x\n' $(seq 1048575 1024 1050623)
fffff
1003ff
1007ff

对于非常长的数字列表,使用xargs来避免系统对参数列表长度的限制:
$ seq 1000000 | xargs printf '%x\n' | tail -n 3
f423e
f423f
f4240

要生成八进制输出,请使用printf %o 格式而不是%x。
在大多数系统上,seq可以为至少253的值生成整数输出。
更大的整数是近似的。具体细节取决于您的浮点实现。参见第10页第2.12节[浮点数]。
常见的情况是,seq可以处理到264的整数,而更大的整数可能在数字上不正确:
$ seq 50000000000000000000 2 50000000000000000004
50000000000000000000
50000000000000000000
50000000000000000004

但是,当仅限于非负整数、增量小于200且没有格式指定选项时,seq可以打印任意大的数字。因此,seq inf可以用来生成无限数列。
在使用带有古怪值的seq时要小心:否则你可能会看到令人惊讶的结果,因为seq内部使用浮点数。例如,在x86平台上,内部表示使用64位小数,命令:
seq 1 0.0000000000000000001 1.0000000000000000009
输出两次1.0000000000000000007,跳过1.0000000000000000008。

退出状态为0表示成功,非0表示失败。

【busybox】【seq】指令介绍

NA

【linux】【seq】指令介绍

[root@localhost bin]# seq --help
用法:seq [选项]... 尾数
 或:seq [选项]... 首数 尾数
 或:seq [选项]... 首数 增量 尾数
Print numbers from FIRST to LAST, in steps of INCREMENT.

必选参数对长短选项同时适用。
  -f, --format=FORMAT      use printf style floating-point FORMAT
  -s, --separator=STRING   use STRING to separate numbers (default: \n)
  -w, --equal-width        equalize width by padding with leading zeroes
      --help显示此帮助信息并退出
      --version显示版本信息并退出

If FIRST or INCREMENT is omitted, it defaults to 1.  That is, an
omitted INCREMENT defaults to 1 even when LAST is smaller than FIRST.
The sequence of numbers ends when the sum of the current number and
INCREMENT would become greater than LAST.
FIRST, INCREMENT, and LAST are interpreted as floating point values.
INCREMENT is usually positive if FIRST is smaller than LAST, and
INCREMENT is usually negative if FIRST is greater than LAST.
INCREMENT must not be 0; none of FIRST, INCREMENT and LAST may be NaN.
FORMAT must be suitable for printing one argument of type 'double';
it defaults to %.PRECf if FIRST, INCREMENT, and LAST are all fixed point
decimal numbers with maximum precision PREC, and to %g otherwise.

GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告 seq 的翻译错误
完整文档请见:<https://www.gnu.org/software/coreutils/seq>
或者在本地使用:info '(coreutils) seq invocation'

使用示例:

NA

常用组合指令:

NA

指令不常用/组合用法还需继续挖掘:

NA


原文地址:https://blog.csdn.net/weixin_44083579/article/details/142444938

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!