numfmt(1) 数字から人が読みやすい文字列への変換と、その逆変換

書式

numfmt [OPTION]... [NUMBER]...

説明

NUMBER (複数可) を変換する。何も指定されなかった場合は標準入力から 読み込んだ数字を変換する。

長いオプションに必須の引数は短いオプションにも必須です。

--debug
無効な入力についての警告を表示する
-d, --delimiter=X
フィールド区切りとしてホワイトスペースではなく X を使用する
--field=N
入力フィールド N の数字を変換する (デフォルトは 1)
--format=FORMAT
printf 形式の浮動小数点フォーマットとして FORMAT を使う。 詳細は下記の FORMAT の説明を参照
--from=UNIT
入力された数字を UNIT に自動スケーリングする。 デフォルトは 'none' である。下記の UNIT の項を参照
--from-unit=N
入力単位のサイズの指定 (デフォルトは 1)
--grouping
ロケールで定義された桁のグルーピングを使う (例: 1,000,000)。 (したがって C/POSIX ロケールではこのオプションは効果がない)
--header[=N]
最初の N 行のヘッダーを (変換せずに) 出力する。 N が指定されなかった場合 N は 1 になる
--invalid=MODE
無効な数字入力時の失敗モード; MODE に指定できるのは abort (デフォルト), fail, warn, ignore
--padding=N
パディングをして出力を N 文字幅にする。 正の N は右寄せ、負の N は左寄せ。 出力の幅が N より大きい場合パディングは無視される。 デフォルトの動作では、ホワイトスペースがあった場合に 自動的にパディングが行われる
--round=METHOD
スケーリング時の丸め方法として METHOD を使用する METHOD に指定できるのは up, down, from-zero (デフォルト), towards-zero, nearest
--suffix=SUFFIX
出力する数字に SUFFIX を追加する。 また、入力する数字で接尾辞 SUFFIX を受け付ける
--to=UNIT
出力する数字を UNIT に自動スケーリングする。 下記の UNIT の項を参照
--to-unit=N
出力単位のサイズの指定 (デフォルトは 1)
--help
この使い方を表示して終了する
--version
バージョン情報を表示して終了する

UNIT オプション:

none
自動スケーリングを行わない。接尾辞があるとエラーが発生する。
auto
1〜2文字の接尾辞を付けることができる
1K = 1000, 1Ki = 1024, 1M = 1000000, 1Mi = 1048576,
si
1文字の接尾辞を付けることができる
1K = 1000, 1M = 1000000, ...
iec
1文字の接尾辞を付けることができる
1K = 1024, 1M = 1048576, ...
iec-i
2文字の接尾辞を付けることができる
1Ki = 1024, 1Mi = 1048576, ...

FORMAT は浮動小数点引数 '%f' を出力できるものでなければいけません。 クォートを付けると (%'f) (現在のロケールでサポートされていれば) --grouping が有効になります。幅を示す数字を指定すると (%10f) パディングが付与されます。 負の幅を指定すると (%-10f) 出力が左寄せされます。

入力されたすべての数字が正常に変換された場合、終了ステータスは 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 | numfmt --header --field 2 --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

GNU coreutils のオンラインヘルプ: <http://www.gnu.org/software/coreutils/> numfmt の翻訳に関するバグは <http://translationproject.org/team/ja.html> に連絡してください。 完全な文書を参照する場合は info coreutils 'numfmt invocation' を実行してください。

作者

作者 Assaf Gordon。

著作権

Copyright © 2013 Free Software Foundation, Inc. ライセンス GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.