numfmt - 将数字转换为/从人类可读的字符串
概要
numfmt [选项]... [数字]...
描述
重新格式化数字,或者如果没有指定数字,则重新格式化标准输入中的数字。
长选项的强制参数对于短选项也是强制的。
--debug
打印无效输入的警告
-d, --delimiter=X
使用 X 代替空格作为字段分隔符
--field=字段
替换输入中这些字段的数字(默认值为 1);请参阅字段部分
--format=格式
使用 printf 样式的浮点格式;请参阅下面的格式部分以获取详细信息
--from=单位
自动缩放输入数字到单位;默认值为“无”;请参阅下面的单位部分
--from-unit=N
指定输入单位大小(而不是默认值 1)
--grouping
使用本地化的数字分组,例如 1,000,000(这意味着在 C/POSIX 本地中不起作用)
--header[=N]
打印(不进行转换)前 N 行标题;如果未指定,则 N 默认为 1
--invalid=模式
无效数字的故障模式:模式可以是:abort(默认值)、fail、warn、ignore
--padding=N
将输出填充到 N 个字符;正 N 将右对齐;负 N 将左对齐;如果输出宽度大于 N,则忽略填充;默认情况下,如果找到空格,则自动填充
--round=方法
使用方法进行缩放时的舍入;方法可以是:up、down、from-zero(默认值)、towards-zero、nearest
--suffix=后缀
将后缀添加到输出数字,并接受输入数字中的可选后缀
--to=单位
自动缩放输出数字到单位;请参阅下面的单位部分
--to-unit=N
输出单位大小(而不是默认值 1)
-z, --zero-terminated
行分隔符是 NUL,而不是换行符
--help
显示此帮助信息并退出
--version
输出版本信息并退出
单位选项:
none 不执行任何自动缩放;后缀将触发错误
auto 接受可选的单个/双字母后缀:1K = 1000,1k = 1000,1Ki = 1024,1M = 1000000,1i = 1048576,
si 接受可选的单个字母后缀:1k = 1000,1K = 1000,1M = 1000000,...
iec 接受可选的单个字母后缀:1K = 1024,1k = 1024,1M = 1048576,...
iec-i 接受可选的双字母后缀:1Ki = 1024,1ki = 1024,1Mi = 1048576,...
字段支持 cut(1) 样式的字段范围:
N 第 N 个字段,从 1 开始计数
N- 从第 N 个字段到行尾
N-M 从第 N 个到第 M 个字段(包括)
-M 从第一个到第 M 个字段(包括)
- 所有字段
多个字段/范围可以用逗号分隔
格式必须适合打印一个浮点参数“%f”。可选的引号(%'f)将启用 --grouping(如果当前支持)。可选的宽度值(%10f)将填充输出。可选的零宽度(%010f)将用零填充数字。可选的负值(%-10f)将左对齐。可选的精度(%.1f)将覆盖输入确定的精度。
如果所有输入数字都已成功转换,则退出状态为 0。默认情况下,numfmt 将在第一个转换错误时停止,退出状态为 2。使用 --invalid='fail',将为每个转换错误打印警告,并且退出状态为 2。使用 --invalid='warn',将诊断每个转换错误,但退出状态为 0。使用 --invalid='ignore',不会诊断转换错误,并且退出状态为 0。
示例
$ numfmt --to=si 1000
-> "1.0k"
$ numfmt --to=iec 2048
-> "2.0K"
$ numfmt --to=iec-i 4096
-> "4.0Ki"
$ echo 1K | numfmt --from=si
-> "1000"
$ echo 1K | numfmt --from=iec
-> "1024"
$ df -B1 | numfmt --header --field 2-4 --to=si
$ ls -l | numfmt --header --field 5 --to=iec
$ ls -lh | numfmt --header --field 5 --from=iec --padding=10
$ ls -lh | numfmt --header --field 5 --from=iec --format %10f
作者
由 Assaf Gordon 编写。
报告错误
GNU coreutils 在线帮助:[https://www.gnu.org/software/coreutils/] 请将任何翻译错误报告到 [https://translationproject.org/team/]
参见
完整文档 [https://www.gnu.org/software/coreutils/numfmt] 或者可以在本地通过以下方式访问:info '(coreutils) numfmt invocation'
由 Debian (9.7-3) 打包 版权所有 © 2025 自由软件基金会。 许可证 GPLv3+:GNU GPL 第 3 版或更高版本 [https://gnu.org/licenses/gpl.html]。 这是一份自由软件:您可以自由修改和重新分发它。 在法律允许的范围内,不提供任何保证。