Heim  >  Artikel  >  System-Tutorial  >  Führen Sie mathematische Berechnungen über die Linux-Befehlszeile durch

Führen Sie mathematische Berechnungen über die Linux-Befehlszeile durch

王林
王林nach vorne
2024-01-15 13:39:05784Durchsuche

Wenn Sie einen Taschenrechner in einer grafischen Desktop-Umgebung benötigen, können Sie einfach ganz durchklicken, um einen Taschenrechner zu finden. Beispielsweise enthält Fedora Workstation bereits ein Tool namens Calculator. Es verfügt über verschiedene Betriebsmodi, mit denen Sie beispielsweise komplexe mathematische Operationen oder Finanzoperationen durchführen können. Aber wussten Sie, dass die Befehlszeile auch ein ähnliches Tool namens bc bereitstellt?

bc Das Tool bietet Ihnen die Funktionen, die Sie von einem wissenschaftlichen Taschenrechner, einem Finanzrechner oder einem einfachen Taschenrechner erwarten würden. Darüber hinaus kann bei Bedarf ein Skript über die Befehlszeile erstellt werden. Dadurch können Sie es in Shell-Skripten verwenden, wenn Sie komplexe Berechnungen durchführen müssen.

Da bc auch von anderer Systemsoftware wie dem CUPS-Druckdienst verwendet wird, ist es möglicherweise bereits auf Ihrem Fedora-System installiert. Zur Überprüfung können Sie den folgenden Befehl verwenden:

dnf list installed bc

Wenn Sie es aus irgendeinem Grund nicht in der Ausgabe des obigen Befehls sehen, können Sie es mit dem folgenden Befehl installieren:

sudo dnf install bc
Verwenden Sie bc, um einige einfache mathematische Operationen durchzuführen

Eine Möglichkeit, bc zu verwenden, besteht in einer eigenen Shell. Dort können Sie viele Berechnungen Zeile für Zeile durchführen. Wenn Sie bc eingeben, erscheint als erstes eine Warnung zu diesem Programm:

$ bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.

Jetzt können Sie Berechnungen oder Befehle einzeln pro Zeile eingeben:

1+1

bc beantwortet die Antwort auf die obige Berechnungsformel:

2

Sie können hier auch andere Befehle ausführen. Sie können Addition (+), Subtraktion (-), Multiplikation (*), Division (/), Klammern, Exponentenzeichen (^) usw. verwenden. Bitte beachten Sie, dass bc auch alle herkömmlichen Operationsregeln befolgt, beispielsweise die Reihenfolge der Operationen. Sie können das folgende Beispiel ausprobieren:

(4+7)*2
4+7*2

Um bc zu verlassen, können Sie über die Tastenkombination Strg+D das Signal „Eingabe Ende“ an bc senden.

Eine andere Möglichkeit, bc zu verwenden, besteht darin, den Befehl echo zu verwenden, um einen Ausdruck oder Befehl zu übergeben. Das folgende Beispiel ist das „Hallo Welt“-Beispiel im Rechner, bei dem die Pipe-Funktion (|) der Shell verwendet wird, um die Ausgabe von echo an bc zu übergeben:

echo '1+1' | bc

Mit Shell-Pipes können Sie mehr als eine Operation senden. Sie müssen Semikolons verwenden, um verschiedene Operationen zu trennen. Die Ergebnisse werden in separaten Zeilen zurückgegeben.

echo '1+1; 2+2' | bc
Genauigkeit

In einigen Berechnungen verwendet bc das Konzept der Präzision, das die Anzahl der Nachkommastellen angibt. Die Standardgenauigkeit ist 0. Divisionsoperationen verwenden immer die Präzisionseinstellung. Wenn Sie die Genauigkeit nicht festlegen, kann es daher zu unerwarteten Antworten kommen:

echo '3/2' | bc
echo 'scale=3; 3/2' | bc

Multiplikation verwendet einen komplexeren Präzisionsauswahlmechanismus:

echo '3*2' | bc
echo '3*2.0' | bc

Gleichzeitig sind die zugehörigen Operationen der Addition und Subtraktion ähnlich:

echo '7-4.15' | bc
Andere Basissysteme

Eine weitere nützliche Funktion von bc ist die Möglichkeit, neben dem Dezimalsystem auch andere Zählsysteme zu verwenden. Beispielsweise können Sie ganz einfach hexadezimale oder binäre mathematische Operationen durchführen. Sie können die Befehle ibase und obase verwenden, um die Eingabe- bzw. Ausgabebasissysteme festzulegen. Beachten Sie Folgendes: Sobald Sie ibase verwenden, werden alle Zahlen, die Sie danach eingeben, als im neu definierten Basissystem enthalten betrachtet.

Um Hexadezimalzahlen in Dezimalzahlen umzuwandeln oder Operationen durchzuführen, können Sie Befehle ähnlich den folgenden verwenden. Bitte beachten Sie, dass Hexadezimalzahlen größer als 9 in Großbuchstaben (A-F) geschrieben werden müssen:

echo 'ibase=16; A42F' | bc
echo 'ibase=16; 5F72+C39B' | bc

Wenn Sie möchten, dass das Ergebnis eine Hexadezimalzahl ist, müssen Sie obase einstellen:

echo 'obase=16; ibase=16; 5F72+C39B' | bc

下面是一个小技巧。假如你在 shell 中做这些十六进制运算,怎样才能使得输入重新为十进制数呢?答案是使用 ibase 命令,但你必须设定它为在当前进制中与十进制中的 10 等价的值。例如,假如 ibase 被设定为十六进制,你需要输入:

ibase=A

一旦你执行了上面的命令,所有输入的数字都将是十进制的了,接着你便可以输入 obase=10 来重置输出的进制系统。

结论

上面所提到的只是 bc 所能做到的基础。它还允许你为某些复杂的运算和程序定义函数、变量和循环结构。你可以在你的系统中将这些程序保存为文本文件以便你在需要的时候使用。你还可以在网上找到更多的资源,它们提供了更多的例子以及额外的函数库。快乐地计算吧!


Das obige ist der detaillierte Inhalt vonFühren Sie mathematische Berechnungen über die Linux-Befehlszeile durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen