GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Holen Sie sich die Ganzzahl der Obergrenze aus der Zahl in Linux (BASH)

Rufen Sie eine Skriptsprache mit einer CELL-Funktion auf. Gegeben $NUMBER :

python -c "from math import ceil; print ceil($NUMBER/500.0)"

oder

perl -w -e "use POSIX; print ceil($NUMBER/500.0), qq{\n}"

Warum externe Skriptsprachen verwenden? Sie erhalten standardmäßig den Boden. Um ceil zu bekommen, tun Sie

$ divide=8; by=3; (( result=(divide+by-1)/by )); echo $result
3
$ divide=9; by=3; (( result=(divide+by-1)/by )); echo $result
3
$ divide=10; by=3; (( result=(divide+by-1)/by )); echo $result
4
$ divide=11; by=3; (( result=(divide+by-1)/by )); echo $result
4
$ divide=12; by=3; (( result=(divide+by-1)/by )); echo $result
4
$ divide=13; by=3; (( result=(divide+by-1)/by )); echo $result
5
....

Um negative Zahlen zu berücksichtigen, können Sie es etwas aufpeppen. Wahrscheinlich sauberere Wege da draußen, aber für den Anfang

$ divide=-10; by=10; neg=; if [ $divide -lt 0 ]; then (( divide=-divide )); neg=1; fi; (( result=(divide+by-1)/by )); if [ $neg ]; then (( result=-result )); fi; echo $result
-1

$ divide=10; by=10; neg=; if [ $divide -lt 0 ]; then (( divide=-divide )); neg=1; fi; (( result=(divide+by-1)/by )); if [ $neg ]; then (( result=-result )); fi; echo $result
1

(Bearbeitet, um let ... zu wechseln bis (( ... )) .)


Linux
  1. Wie bekomme ich den Hostnamen von der IP (Linux)?

  2. C++ Get-String aus der Zwischenablage unter Linux

  3. Holen Sie sich die Subnetzmaske in Linux mit Bash

  4. Wie kann ich die letzte Zahl von String in Bash bekommen?

  5. Wie bekomme ich Elemente aus der Liste in Bash?

Wikit – Holen Sie sich Wikipedia-Zusammenfassungen von der Befehlszeile in Linux

So erhalten Sie Nachrichten sofort von der Befehlszeile in Linux

So erhalten Sie die Anzahl der Prozessoren / Kerne in Linux

Vollständigen Pfad aus Bash-Skript abrufen?

Linux – Partitionsnummer von Sda1 auf Sda2 ändern?

Shell/Bash-Skript zum Finden von Primzahlen in Linux