Unix / Linux - Shell Builtin Mathematical Functions
Hallo, angehende Programmierer! Heute machen wir uns auf eine aufregende Reise in die Welt der Unix/Linux-Shell eingebauten mathematischen Funktionen. Machen Sie sich keine Sorgen, wenn Sie neu im Programmieren sind - ich werde Sie bei jedem Schritt mit klaren Erklärungen und vielen Beispielen führen. Tauchen wir ein!
Was sind Shell eingebauten Funktionen?
Bevor wir uns den mathematischen Funktionen zuwenden, lassen Sie uns verstehen, was Shell eingebauten Funktionen sind. Diese sind Befehle, die direkt in die Shell eingebaut sind, was bedeutet, dass sie nicht separately installiert werden müssen. Sie sind immer an Ihrer Seite, bereit, Ihnen zu helfen, verschiedene Aufgaben effizient auszuführen.
Warum mathematische Funktionen in Shell-Skripten verwenden?
Sie fragen sich vielleicht, "Warum brauchen wir Mathematik in Shell-Skripten?" Stellen Sie sich vor, Sie schreiben ein Skript, um Ihr monatliches Budget zu berechnen oder einige Daten zu analysieren. Das ist, wo diese Funktionen sehr nützlich sind! Sie ermöglichen es Ihnen, Berechnungen direkt in Ihrem Shell-Skript durchzuführen, was Ihnen Zeit und Mühe spart.
Häufig verwendete Shell eingebauten mathematische Funktionen
Lassen Sie uns einige der am häufigsten verwendeten mathematischen Funktionen in Unix/Linux-Shells erkunden. Wir verwenden die Bash-Shell für unsere Beispiele, da sie weit verbreitet ist und auf vielen Systemen vorinstalliert ist.
1. Grundlegende arithmetische Operationen
Bash bietet mehrere Möglichkeiten zur Durchführung grundlegender arithmetischer Operationen. Sehen wir uns diese an:
a. Verwendung des expr
Befehls
#!/bin/bash
a=10
b=5
sum=$(expr $a + $b)
echo "Die Summe von $a und $b ist: $sum"
Dieses Skript wird ausgeben: Die Summe von 10 und 5 ist: 15
Hier wird expr
verwendet, um den Ausdruck $a + $b
zu bewerten. Das Ergebnis wird dann in der Variablen sum
gespeichert.
b. Verwendung von doppelten Klammern (( ))
#!/bin/bash
a=10
b=5
((sum = a + b))
echo "Die Summe von $a und $b ist: $sum"
Diese Methode ist kürzer und wird oft für einfache arithmetische Operationen bevorzugt.
2. Komplexere mathematische Operationen
Für komplexere Berechnungen bietet Bash den bc
Befehl. Obwohl dies nicht strenggenommen eine eingebaute Funktion ist, ist er commonly verfügbar und sehr nützlich.
#!/bin/bash
pi=$(echo "scale=2; 22/7" | bc)
echo "Der Wert von pi (auf 2 Dezimalstellen) ist: $pi"
Ausgabe: Der Wert von pi (auf 2 Dezimalstellen) ist: 3.14
Hier setzt scale=2
die Anzahl der Dezimalstellen und bc
führt die Division durch.
Tabelle der häufig verwendeten mathematischen Operationen
Hier ist eine praktische Tabelle der mathematischen Operationen, die Sie in Bash durchführen können:
Operation | Symbol | Beispiel |
---|---|---|
Addition | + | echo $((5 + 3)) |
Subtraktion | - | echo $((10 - 4)) |
Multiplikation | * | echo $((6 * 7)) |
Division | / | echo $((20 / 5)) |
Modulus (Rest) | % | echo $((17 % 3)) |
Potenzierung | ** | echo $((2 ** 3)) |
Erweiterte mathematische Funktionen
Nun, da wir die Grundlagen behandelt haben, lassen Sie uns einige fortgeschrittene mathematische Funktionen erkunden. Diese sind nicht in Bash selbst eingebaut, aber sie werden commonly in Shell-Skripten über den bc
Befehl verwendet.
1. Quadratwurzel
#!/bin/bash
number=16
sqrt=$(echo "scale=2; sqrt($number)" | bc)
echo "Die Quadratwurzel von $number ist: $sqrt"
Ausgabe: Die Quadratwurzel von 16 ist: 4.00
2. Sinus und Kosinus
#!/bin/bash
angle=30
sin=$(echo "scale=4; s($angle * 3.14159 / 180)" | bc -l)
cos=$(echo "scale=4; c($angle * 3.14159 / 180)" | bc -l)
echo "Der Sinus von $angle Grad ist: $sin"
echo "Der Kosinus von $angle Grad ist: $cos"
Ausgabe:
Der Sinus von 30 Grad ist: .4999
Der Kosinus von 30 Grad ist: .8660
Beachten Sie die -l
Option mit bc
, die die Mathematikbibliothek für trigonometrische Funktionen lädt.
Praktisches Beispiel: Temperaturumrechner
Lassen Sie uns unser neues Wissen mit einem praktischen Beispiel - einem Temperaturumrechner - anwenden!
#!/bin/bash
echo "Temperaturumrechner"
echo "1. Celsius nach Fahrenheit"
echo "2. Fahrenheit nach Celsius"
read -p "Geben Sie Ihre Wahl ein (1/2): " choice
case $choice in
1)
read -p "Geben Sie die Temperatur in Celsius ein: " celsius
fahrenheit=$(echo "scale=2; ($celsius * 9/5) + 32" | bc)
echo "$celsius°C ist gleich $fahrenheit°F"
;;
2)
read -p "Geben Sie die Temperatur in Fahrenheit ein: " fahrenheit
celsius=$(echo "scale=2; ($fahrenheit - 32) * 5/9" | bc)
echo "$fahrenheit°F ist gleich $celsius°C"
;;
*)
echo "Ungültige Wahl"
;;
esac
Dieses Skript zeigt, wie wir mathematische Funktionen in einer realen Welt-Situation verwenden können. Es ermöglicht Benutzern, Temperaturen zwischen Celsius und Fahrenheit umzurechnen.
Schlussfolgerung
Herzlichen Glückwunsch! Sie haben gerade Ihre ersten Schritte in die Welt der Shell-Skriptierung und mathematischer Funktionen unternommen. Denken Sie daran, dass Übung den Meister macht. Versuchen Sie, eigene Skripte mit diesen Funktionen zu erstellen - vielleicht einen Taschenrechner oder ein Skript zur Datenanalyse.
Während Sie Ihre Reise im Programmieren fortsetzen, werden Sie feststellen, dass diese grundlegenden mathematischen Operationen die Grundlage für komplexere Berechnungen bilden. Bleiben Sie neugierig, bleiben Sie neugierig und vor allem, haben Sie Spaß daran!
Frohes Coden, zukünftige Tech-Zauberer! ?????
Credits: Image by storyset