Wie man auf 2 Dezimalstellen in Bash rundet

Wie man auf 2 Dezimalstellen in Bash rundet
Bash ist eine bekannte Shell- und Befehlssprache, die zur effizienten Ausführung von Aufgaben verwendet wird. Während der Arbeit in Bash -Skripten und im explizit mit den schwebenden Zahlen spielen, ist es häufig erforderlich, um die schwebenden Zahlen abzurunden. In diesem Beitrag lernen wir ein paar Befehle und Techniken des Bash -Skripts, um die Nummer auf 2 Dezimalstellen abzurunden.

Während des Anzeigens der Zahlen oder Variablen, die Schwimmernummern enthalten, können verschiedene Befehle den Text oder die Variablen wie drucken Echo, drucken, Und printf. Obwohl wir die Variablen und Zahlen direkt aus solchen Befehlen anzeigen können, ist der einzige Befehl, der einige zusätzliche Funktionen und Funktionen aufweist Printf -Befehl Das betrifft unser Ziel.

Printf -Befehl

Der printf Der Befehl ähnelt der FunctionF () -Funktion in C -Sprache. Es ermöglicht uns, die Argumente zu formatieren und zu drucken.

Syntax

Die Syntax zum Schreiben des Printf -Befehls in Bash lautet:

printf "String" Argumente

Im Printf -Befehl müssen wir zuerst die Zeichenfolge in umgekehrten Kommas bereitstellen, und dann können wir ihr die Argumente geben.

Beispiel

Drucken wir zuerst einen einfachen Text mit dem Printf -Befehl aus:

printf "Hallo aus LinuxHint."

Sie können sehen, dass es gerade die Zeichenfolge ausgedruckt hat, aber der Benutzername und Hostname kommen direkt nach der Zeichenfolge.

Um die Zeichenfolge in eine einzelne Zeile zu bringen, können wir das neue Zeichen '\ n' verwenden, um die saubere und klare Ausgabe zu erhalten:

printf "Hallo von LinuxHint \ n"

Jetzt haben wir eine saubere und klare Ausgabe.

Lassen Sie uns nun sehen, wie Sie die Argumente vorlegen, um diesem Printf -Befehl eine Schwimmernummer zu geben und sie abzurunden.

Um die Argumente bereitzustellen, müssen wir den Spezifizierer (%s) in der Zeichenfolge verwenden, die durch die angegebenen Argumente ersetzt wird. Zum Beispiel:

printf "Benutzernummer: %s \ n" 24

Okay, jetzt haben Sie die primäre Verwendung und Funktionalität des Printf -Befehls verstanden. Lassen Sie uns eine Schwimmernummer angeben und sehen, wie Sie sich auf 2 Dezimalstellen runden können.

Präzisionsrichtlinie

Präzisionsmodifikator wird zum Abrunden einer Schwimmernummer verwendet.

Die Syntax zum Schreiben eines Präzisionsmodifikators besteht darin, die Anzahl der Dezimalpunkte anzugeben, die die Anzahl der gefolgt von dem Punkt abrunden möchten (DOT (DOT) (DOT (.).

"%.2f "

Um eine Float -Nummer auf 2 Dezimalstellen abzurunden, können Sie den unten gezeigten Printf -Befehl ausführen:

printf "%.2f \ n "4.4444

Sie können in dem beigefügten Screenshot sehen, dass die Zahl „4.4444 ”ist auf„ 4 abgerundet.44 ”, wie wir es wollten.

In ähnlicher Weise können wir auch hier eine Variable angeben, anstatt sie direkt zu bieten.

Num = 4.4444
printf "%.2f \ n "$ num

Um mehrere Werte bereitzustellen:

Num1 = 3.333
Num2 = 4.4444
printf "%.2F %.3f \ n "$ num1 $ num2

Wenn Sie den Befehl echo weiterhin verwenden und die Nummer abrunden möchten, müssen Sie in diesem Fall den Befehl echo mit awk verwenden, um die Nummer wie unten gezeigt abzurunden:

Echo "3.333 "| awk 'printf ("%.2f \ n ", $ 1) '

ODER

Num = 3.333
echo num | awk 'printf ("%.2f \ n ", $ 1) '

Abschluss

Dieser Beitrag enthält eine detaillierte und tiefgreifende Anleitung zum Printf -Befehl und wir haben gelernt, eine beliebige Zahl mit dem Befehl printf auf 2 Dezimalstellen abzurunden. Darüber hinaus haben wir mehrere Beispiele ausprobiert, um überschichtete Kenntnisse darüber zu haben, wie der Präzisionsmodifikator verwendet wird, um eine Nummer mit dem Printf -Befehl abzurunden. Darüber hinaus haben wir gelernt, jede Schwimmernummer mit dem Befehl echo und awk abzurunden.