Wie zeige ich Null vor dem Dezimalpunkt in bc?


9
echo "scale=3;1/8" | bc

zeigt .125auf dem Bildschirm. Wie kann angezeigt werden, 0.125ob das Ausgabeergebnis kleiner als eins ist?

Antworten:



1

Sie können in awk pfeifen

echo "scale=3;1/8" | bc | awk '{printf "%.3f\n", $0}'

oder du könntest einfach awk für alles verwenden

awk '{printf "%.3f\n", 1/8}' <<< ""

Ausgabe

0.125

Warum sollten wir tun <<< ""?
Kevin Dong

@ KevinDongNaiJia awk benötigt eine Eingabedatei, um zu arbeiten, diese erstellt und leer here string. Also im Grunde so, als ob es am Ende eine leere Datei gibt, sonst liest awk von stdin. Weitere Informationen hier

@cuonglm damit du kannst, bitte bearbeite meine Antworten nicht.

@ Cuonglm Petty Downvote, schön!

1
@JID: Nicht alle Shell-Zeichenfolgen werden hier unterstützt. Sie müssen sie für andere Viewer angeben. Die Verwendung von BEGINBlock verhindert diese Probleme und ist portabel.
Cuonglm
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.