Batch-Problem bei formatieren Zahlen mit if leq
"if 12.234.222 leq 2 echo kleinergleich" erkennt anhand der "." nicht, dass 12.234.222 "größergleich" ist als zwei.
Der Linke wert wird in meinem Script enstpricht einer sich ständig änderenden Dateigröße, die mir "dir c:\<datei> /O:S"aus dem Dateisystem ausgelesen wird.
Wie bekomme ich der IF Anweisung beigebracht, dass er die mit Punkten formatierte Zahl wie eine normale Zahl behandelt?
Der Linke wert wird in meinem Script enstpricht einer sich ständig änderenden Dateigröße, die mir "dir c:\<datei> /O:S"aus dem Dateisystem ausgelesen wird.
Wie bekomme ich der IF Anweisung beigebracht, dass er die mit Punkten formatierte Zahl wie eine normale Zahl behandelt?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 48543
Url: https://administrator.de/forum/batch-problem-bei-formatieren-zahlen-mit-if-leq-48543.html
Ausgedruckt am: 09.04.2025 um 09:04 Uhr
3 Kommentare
Neuester Kommentar
...oder, wenn Du das Problem stressärmer lösen willst, dann ändere:
JETZT: dir c:<datei> /O:S .......in...
BESSER: dir c:<datei> /O:S /-C
...Dann werden die DIR-Größenangaben ohne Tausenderpunkte angezeigt.
Sozusagen als Zahlen und Du könntest diese mit "SET /A" einer Variable zuweisen und "echte" Vergleiche größer/kleiner damit machen.
Im Moment ist der Titel Deines Beitrags pures Wunschdenken - Du vergleichst Strings.
Gruß
Biber
JETZT: dir c:<datei> /O:S .......in...
BESSER: dir c:<datei> /O:S /-C
...Dann werden die DIR-Größenangaben ohne Tausenderpunkte angezeigt.
Sozusagen als Zahlen und Du könntest diese mit "SET /A" einer Variable zuweisen und "echte" Vergleiche größer/kleiner damit machen.
Im Moment ist der Titel Deines Beitrags pures Wunschdenken - Du vergleichst Strings.
Gruß
Biber