Ubuntu bashでは、小数点以下の桁数を014.04.1 LTS 64-bit
に設定し、小数点の左側の0を削除することはできません。にどのようにbc
切り替えることができますか?これは私のファイル命名規則のために必要です。ご提案いただきありがとうございます。0.005000000
.005
更新:すでに定義されているシェル変数でこれを使用して再定義できますか?以下のコードではエラーが発生します。
~/Desktop/MEEP$ printf "%.3f\n" $w
bash: printf: 0.005000: invalid number
0,000
ロケール出力
@vesnog:~$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=tr_TR.UTF-8
LC_TIME=tr_TR.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=tr_TR.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=tr_TR.UTF-8
LC_NAME=tr_TR.UTF-8
LC_ADDRESS=tr_TR.UTF-8
LC_TELEPHONE=tr_TR.UTF-8
LC_MEASUREMENT=tr_TR.UTF-8
LC_IDENTIFICATION=tr_TR.UTF-8
LC_ALL=
出力echo $w
@vesnog:~$ echo $w
0.005000
ベストアンサー1
簡単な方法は以下を使用することですprintf
。
$ printf "%.3f\n" 0.005000000000
0.005
先行を削除するには、0
次のように解析しますsed
。
$ printf "%.3f\n" 0.005000000000 | sed 's/^0//'
.005