Fließkomma-Arithmetik in Bash

Naila Saad Siddiqui 15 Februar 2024
  1. Integer-Arithmetik in Bash
  2. Fließkomma-Arithmetik in Bash
  3. Verwenden Sie den Basisrechner (bc) für Fließkomma-Arithmetik in Bash
  4. Verwenden Sie den awk-Befehl für Gleitkomma-Arithmetik in Bash
  5. Verwenden Sie den perl-Befehl für Gleitkomma-Arithmetik in Bash
  6. Verwenden Sie den python-Befehl für Gleitkomma-Arithmetik in Bash
  7. Abschluss
Fließkomma-Arithmetik in Bash

Dieser kurze Artikel beschreibt, wie Sie Gleitkommaberechnungen in der GNU BASH (Shell Scripting) schnell durchführen können, entweder direkt an der Eingabeaufforderung oder in einem Shell-Skript.

Das Durchführen schneller Gleitkommaberechnungen an der Eingabeaufforderung (Shell) oder in Shell-Skripten kann hilfreich sein, wenn Sie mit Zahlen arbeiten. Die folgenden vier Methoden zur Durchführung von Gleitkommaarithmetik in Bash werden in diesem Artikel behandelt:

  1. Die Berechnungsmethode mit beliebiger Genauigkeit unter Verwendung des Befehls bc.
  2. Verwenden der Methode zum Scannen und Verarbeiten von Mustern awk.
  3. Verwendung der perl-Befehlsmethode.
  4. Verwenden der Befehlsmethode python.

Integer-Arithmetik in Bash

Nur ganzzahlige Arithmetik kann einfach im Bash-Skript durchgeführt werden, indem Sie entweder den Befehl expr in der Befehlszeile oder eckige Klammern verwenden, um Ihren Ausdruck auszuwerten $[1+1]. Dies wird im folgenden Code gezeigt:

#!/bin/bash
echo $[2 + 1]

Dies erzeugt die folgende Ausgabe:

expr und ganzzahlige arithmetische Ausgabe

Dies sind jedoch nur ganzzahlige Berechnungen. Wenn die Antwort in diesen Berechnungen in Fließkommazahlen vorliegt, wird nur der ganzzahlige Teil angezeigt.

Um Gleitkommaoperationen auszuführen, benötigen wir Hilfe von den unten beschriebenen Tools.

Fließkomma-Arithmetik in Bash

Mehrere Tools können verwendet werden, um arithmetische Gleitkommaoperationen in Bash auszuführen. In diesem Artikel werden jedoch die vier am häufigsten verwendeten und leicht verfügbaren Tools (in allen UNIX- oder Linux-Betriebssystemfamilien) untersucht.

Verwenden Sie den Basisrechner (bc) für Fließkomma-Arithmetik in Bash

Verwenden Sie für einen Befehlszeilenrechner den Befehl bc. Es ist vergleichbar mit einem einfachen Taschenrechner, mit dem wir einfache mathematische Berechnungen durchführen können.

Die grundlegendsten Operationen in jeder Programmiersprache sind arithmetische Operationen. Die Befehle bc und expr sind im Linux- oder Unix-Betriebssystem verfügbar, um mathematische Operationen durchzuführen.

Diese Befehle können arithmetische Ausdrücke in Shellscript oder Bash auswerten.

Das folgende Skript berechnet die Addition und Division von Gleitkommazahlen und zeigt das Bildschirmergebnis an.

#!/bin/bash
echo "Addition: "
echo '1.5 + 2.5' | bc -l
echo "Division"
echo '2.1/3.2' | bc -l

Dies ergibt die folgende Ausgabe:

bc-Ausgang

Verwenden Sie den awk-Befehl für Gleitkomma-Arithmetik in Bash

Reelle Zahlen oder Gleitkommazahlen enthalten eine Bruchkomponente. Alle Zahlenwerte werden in awk durch Gleitkommazahlen doppelter Genauigkeit dargestellt.

Anders ausgedrückt sind alle Zahlen in awk Gleitkommazahlen, was bedeutet, dass alle Berechnungen diese Zahlen verwenden.

Der awk-Befehl hat den Vorteil, dass er in allen UNIX-ähnlichen Betriebssystemen oder Linux-Distributionen verfügbar ist, da er ziemlich alt ist und schon lange verwendet wird.

Das folgende Skript berechnet mit awk die Multiplikation und Division zweier Gleitkommazahlen.

#!/bin/bash
echo "Multiplication: "
echo - | awk '{print 2.1 * 3.2}'
echo "Division"
echo - | awk '{print 2.1 / 3.2}'

Dies ergibt die folgende Ausgabe:

awk-Ausgabe

Verwenden Sie den perl-Befehl für Gleitkomma-Arithmetik in Bash

Perl ist eine Programmiersprache, die normalerweise in einem Paket mit allen Linux-Distributionen oder anderen UNIX-ähnlichen Betriebssystemen enthalten ist. Der Befehl perl kann in Bash verwendet werden und hilft bei der Durchführung von Gleitkomma-Arithmetikoperationen in Linux.

Es kann alle Operationen wie Addition, Subtraktion, Multiplikation, Division und Zuweisungsoperator ausführen.

Das folgende Skript berechnet die Subtraktion und Division zweier Gleitkommazahlen mit dem Befehl perl unter Linux:

#!/bin/bash
echo "Subtraction: "
perl -e 'print 4.1 - 6.2'
echo "Division"
perl -e 'print 4.1 / 2.2'

Dies ergibt die folgende Ausgabe:

Perl-Ausgabe

Verwenden Sie den python-Befehl für Gleitkomma-Arithmetik in Bash

Genau wie Perl ist Python eine weitere Sprache, die in allen Bereichen der Programmierung weit verbreitet ist. Dies ist eine häufig verwendete Sprache und wird manchmal mit Ihrer Linux-Distribution vorinstalliert.

Der Befehl python hilft bei der Durchführung von Gleitkomma-Arithmetikoperationen im Bash-Skript. Es kann alle Operationen wie Addition, Subtraktion, Multiplikation, Division und Zuweisungsoperator ausführen.

Das folgende Skript berechnet die Addition und Division zweier Gleitkommazahlen mit dem Befehl python:

#!/bin/bash
echo "Addition: "
python -c 'print 4.1 + 6.2'
echo "Division"
python -c 'print 4.1 / 2.2'

Dies ergibt die folgende Ausgabe:

Python-Ausgabe

Abschluss

Unter Unix oder der GNU Bourne Again Shell (Bash) gibt es mindestens vier Möglichkeiten, Gleitkomma-Arithmetik auf der Kommandozeile oder in den Skripten auszuführen. Dies sind die Befehle awk, perl, python und bc.

Auf einem Unix-System sind wahrscheinlich AWK, BC und Perl vorinstalliert. Obwohl Python immer noch weniger populär ist als PERL, ist es mittlerweile ziemlich weit verbreitet.

Im Gegensatz zu anderen Taschenrechnern, die normalerweise standardmäßig mit 32- oder 64-Bit-Gleitkommazahlen arbeiten, hat BC den einzigartigen Vorteil, ein Taschenrechner mit beliebiger Genauigkeit zu sein.