Dieser Beitrag ist schon älter. Bitte vergewissern Sie sich, dass die Rahmenbedingungen oder der enthaltene Lösungsvorschlag noch dem aktuellen Stand der Technik entspricht.

Kommazahlen vergleichen in einer Shell

Mitglied: Gorthaur
Hallo

Ich habe eine Frage bzgl. Shellprogrammierung

Ich erstelle mir mittels Robocopy eine Logdatei meines Backups: Diese filtere ich nach bestimmten Kriterien in meiner Shell.
Als Ergebnis erhalte ich eine Datei die folgenden Inhalt hat:

6.0 m T:\users\kurtr\fuer karl\hO\db\db_singleUser-2007-8-17.zip
3.0 m T:\users\markusg\Oracle\Authentication Services (Linux)\authservices_sample.zip
3.5 m W:\karls\profile\Oracle Jar Cache\frmall_jinit.jar-7844dae2-77051520.zip
3.4 m W:\karls\profile\Oracle Jar Cache\itext-paulo-155.jar-1890247f-49d06567.zip
7.8 m V:\rman\D817\c-1996553605-20070818-00.ctl
447.9 m V:\rman\D817\D817_337_20070818
458.6 m V:\rman\D817\D817_339_20070818
298.6 m V:\rman\D817\D817_340_20070818
752.4 m V:\rman\D817\D817_342_20070818
1.2 m V:\rman\D817\D817_343_20070818
4.4 m V:\rman\P817\c-2936502674-20070818-00.ctl
5.6 m V:\rman\P817\P817_200_20070818
528.6 m V:\rman\P817\P817_201_20070818


Ziel meines Shells soll es sein das alle Zeilen wo die Dateigröße > 500 MB ist auszugeben.

Mein Ansatz sieht folgendermaßen aus: (Auszug)


while read -r filesizeinmb dir
do
if [ "$filesizeinmb" -ge "$2" ]; then
echo $dir " || " $filesizeinmb
fi
done < output_m.txt


Also ich lese Zeile für Zeile ein und speichere es in 2 Variablen. Danach würde ich gerne die Dategröße mit einem Eingabeparameter vergleichen. Wenn die Dateigröße größer ist soll die Dateigröße + Pfad/Datei ausgegeben werden.

Das Problem ist das die Dateigröße eine Kommazahl ist. Der Eingabeparameter soll auch ein Kommawert sein. Leider habe ich nichts gefunden um Kommawerte zu vergleichen.
Ich habe probiert den Kommawert abzuschneiden mit "$filesizeinmb | cut -d. -f1" leider ohne Erfolg.

Gibt es irgendeine Möglichkeit? Ich bin nach stundenlangem Google leider ratlos. Habe nichts angemessenes gefunden

mfg
Mario

Content-Key: 67954

Url: https://administrator.de/contentid/67954

Ausgedruckt am: 24.10.2021 um 06:10 Uhr

Mitglied: Natureshadow
Natureshadow 06.09.2007 um 13:08:12 Uhr
Goto Top
Hallo,

Zahlen werden in der Bash mit dem Operator -lt (less than, weniger als) und -gt (greater than, größer als) verglichen.

Grüße,
Nik
Heiß diskutierte Beiträge
question
Gefahren durch Nutzung von EOL Smartphones (end of life support)nachgefragtVor 1 TagFrageSicherheit21 Kommentare

Hallo Administratoren, weil Freitag ist erlaube ich mir die Frage (brainstorming): Welche Gefahren hinsichtlich IT-Sicherheit und Datenschutz seht ihr bei der Nutzung von (eol) Smartphones, ...

question
Netzwerkplan u. Kabelbelegung zeichnen? gelöst McLionVor 1 TagFrageNetzwerke12 Kommentare

Hallo zusammen, ich suche irgendein Tool (am besten Open Source) um Netzwerkpläne zu zeichnen. Diese gibt es zwar wie Sand am Meer, aber mir geht's ...

question
Nebenstellenkreis von 2stellig auf 3stellig - was geschieht mit den bisherigen Rufnummerndeparture69Vor 1 TagFrageTK-Netze & Geräte13 Kommentare

Hallo. Bei uns besteht für 2022 die Anforderung, deutlich mehr Bürotelefone in Einsatz zu bringen. Die Anzahl der Nebenstellen ist vertragsseitig derzeit aber auf 100 ...

question
ASUS H110M-A - TPM-Funktion im BIOS? gelöst SarekHLVor 21 StundenFrageCPU, RAM, Mainboards15 Kommentare

Hallo zusammen, weiß jemand sicher, ob das ASUS H110M-A/M.2 eine TPM-Funktion/Emulation im BIOS hat? Hier ist das Board ganz unten als Win11-kompatibel aufgeführt, aber während ...

question
Sfp 100Mbit Switch gesuchtjonasgrafeVor 21 StundenFrageSwitche und Hubs16 Kommentare

Hi zusammen, Bei uns der Firma ist heute Nacht ein Einsteckmodul (Lwl SC) von einem Siemens Scalance Switch gestorben. Über diese Module besteht eine Verbindung ...

question
HP Printerport schneller als TCPIP PrinterportAnulu1Vor 1 TagFrageDrucker und Scanner8 Kommentare

Hallo, ich habe einen Drucker über einen Printserver mit dem HP Printerprort installiert. Der Drucker ist über einen 100 mbit Lan Anschluß verbunden. Wenn ich ...

question
Von Outlook gesendete Nachricht kann vom Empfänger nicht angezeigt werdenfrosch2Vor 1 TagFrageOutlook & Mail11 Kommentare

Hallo, ich brauche eure Hilfe zur Selbsthilfe. Im moment sehe ich den Wald vor läuter Bäumen nicht. Problem: Ein Mitarbeiter von uns sendet mails mit ...

question
PfSense nach Änderung von "Block private networks and loopback addresses" nicht mehr erreichbarvafk18Vor 1 TagFrageRouter & Routing5 Kommentare

Ich habe an meiner pfSense am entfernten Standort in den WAN-Einstellungen den Haken bei "Block private networks and loopback addresses" gelöscht. Nach dem Bestätigen war ...