Batch dateigröße auslesen und verarbeiten
cewiethemaster (Level 2) - Jetzt verbinden
23.08.2011, aktualisiert 18.10.2012, 11035 Aufrufe, 6 Kommentare
Hi
ich bins mal wieder mit einer neuen Frage.
Ich habe ein Batch.Script, das folgendes tut (oder tun soll):
1.) Es sucht die vorher angegebene Datei
1.) speichert die Datei-Größe ab
2.) sortiert die Dateigröße und gibt eine formatierte Zahl mit Kürzel aus
2.a.) Bei größer als ein 1 MB wird sie in MB angezeigt.
2.b.) Bei kleiner als 1 MB wird sie in kb angezeigt.
3.) Testet, ob die Datei kleiner ist, als 5 MB
3.a.) Wenn kleiner, als 5 MB, dann läuft es normal weiter
3.b.) Wenn größer als 5 MB, dann wird sich beschwert.
Derzeit sieht es so aus:
Anscheinend wird die ausgelesene Zahl nicht abgespeichert, oder sie wurde erst gar nicht korrekt ausgelesen.
Und da das ganze Programm auf dieser einsamen Zahl aufbaut, gehts natürlich nicht.
Danke & LG
ich bins mal wieder mit einer neuen Frage.
Ich habe ein Batch.Script, das folgendes tut (oder tun soll):
1.) Es sucht die vorher angegebene Datei
1.) speichert die Datei-Größe ab
2.) sortiert die Dateigröße und gibt eine formatierte Zahl mit Kürzel aus
2.a.) Bei größer als ein 1 MB wird sie in MB angezeigt.
2.b.) Bei kleiner als 1 MB wird sie in kb angezeigt.
3.) Testet, ob die Datei kleiner ist, als 5 MB
3.a.) Wenn kleiner, als 5 MB, dann läuft es normal weiter
3.b.) Wenn größer als 5 MB, dann wird sich beschwert.
Derzeit sieht es so aus:
set datei="[Datei-Pfad und Name]"
for /f "tokens=1-3" %%i in ('dir %datei% /-C /S ^|find %datei% ^|find "Bytes"') do set dateigrösse=%%j
if %dateigrösse% GEQ 1000000 goto :MB
:kB
set /A %dateigrösse%=(%dateigrösse% / 1000)
set unit=kB
goto :Ende
:MB
set /A mb=(%dateigrösse% / 1000000)
set /A kb=(%dateigrösse% - %mb% * 1000000)/1000
set %dateigrösse%=%mb%,%kb:~0,2%
set unit=MB
:Ende
if %dateigrösse% GEQ 5000000 goto big
goto small
:big
echo Die Datei ist zu groß.
echo Sie darf nur maximal 5 MB groß sein.
pause
goto :EOF
:small
echo Die Datei wurd akzeptiert.
pause
Und da das ganze Programm auf dieser einsamen Zahl aufbaut, gehts natürlich nicht.
Danke & LG
6 Antworten
- LÖSUNG 60730 schreibt am 23.08.2011 um 20:48:24 Uhr
- LÖSUNG bastla schreibt am 23.08.2011 um 20:52:18 Uhr
- LÖSUNG 60730 schreibt am 23.08.2011 um 20:54:22 Uhr
- LÖSUNG Skyemugen schreibt am 23.08.2011 um 22:03:36 Uhr
- LÖSUNG bastla schreibt am 23.08.2011 um 22:54:05 Uhr
- LÖSUNG Skyemugen schreibt am 24.08.2011 um 07:41:54 Uhr
- LÖSUNG bastla schreibt am 23.08.2011 um 22:54:05 Uhr
- LÖSUNG Skyemugen schreibt am 23.08.2011 um 22:03:36 Uhr
- LÖSUNG 60730 schreibt am 23.08.2011 um 20:54:22 Uhr
- LÖSUNG bastla schreibt am 23.08.2011 um 20:52:18 Uhr
LÖSUNG 23.08.2011 um 20:48 Uhr
LÖSUNG 23.08.2011, aktualisiert 18.10.2012
... oder schau gleich hier vorbei ...
Ansonsten: Welche maximal Dateigröße ist zu erwarten/berücksichtigen? Wenn es nicht in den GB-Bereich geht, sollte T-Mos Hinweis schon genügen ...
Grüße
bastla
Ansonsten: Welche maximal Dateigröße ist zu erwarten/berücksichtigen? Wenn es nicht in den GB-Bereich geht, sollte T-Mos Hinweis schon genügen ...
Grüße
bastla
LÖSUNG 23.08.2011, aktualisiert 18.10.2012
Servus Bastla,
oder dort
@ MasterKevin:
Wieder viel zu einfach, oder ist schon wieder Freitag?
Sei mir nicht böse, aber wenn ich um 20:48 deine Frage von 20:37:53 sehe und du da schon nicht mehr angemeldet warst, und ich nachdem Bastla ein fast aktuelles ähnliches Thema aus dem Ärmel geschüttelt hat, und ich dann
27 Fragen
2 Anleitungen
23 Kommentare
finde, vermute ich, nur einer von den bisher 3 Beteiligten hat die Suchmaschine nicht angeworfen.
Und ich Vollochse werf noch mein feuchtes Brötchen auf den Schultern an...
Gruß
oder dort
Grüße
bastla
bastla
@ MasterKevin:
Wieder viel zu einfach, oder ist schon wieder Freitag?
Sei mir nicht böse, aber wenn ich um 20:48 deine Frage von 20:37:53 sehe und du da schon nicht mehr angemeldet warst, und ich nachdem Bastla ein fast aktuelles ähnliches Thema aus dem Ärmel geschüttelt hat, und ich dann
27 Fragen
2 Anleitungen
23 Kommentare
finde, vermute ich, nur einer von den bisher 3 Beteiligten hat die Suchmaschine nicht angeworfen.
Und ich Vollochse werf noch mein feuchtes Brötchen auf den Schultern an...
Gruß
LÖSUNG 23.08.2011 um 22:03 Uhr
Aloha ihr zwei
- ok und der Freitags-TE am Dienstag ^_^
sagt mal, fragt ihr euch auch die ganze Zeit, wie man bei dieser dir-Ausgabe die Lego-Bausteine wieder zusammensetzt, sodass find dann auch %datei% finden kann? ... Glaube ich lasse mal den Sohn von meinem Arbeitskollegen ran, der kennt sich mit Lego aus.
Mal ernsthaft, hat der TE die batch überhaupt mal getestet? Also wenn %datei% tatsächlich den Pfad plus Dateinamen enthält, dann hat dort jemand noch nie Tetris gespielt oder er hat bereits einige Zeilen vollständig bekommen und somit neutralisiert
greetz André
@T-Mo: O:\chsen\test.cmd?
sagt mal, fragt ihr euch auch die ganze Zeit, wie man bei dieser dir-Ausgabe die Lego-Bausteine wieder zusammensetzt, sodass find dann auch %datei% finden kann? ... Glaube ich lasse mal den Sohn von meinem Arbeitskollegen ran, der kennt sich mit Lego aus.
Mal ernsthaft, hat der TE die batch überhaupt mal getestet? Also wenn %datei% tatsächlich den Pfad plus Dateinamen enthält, dann hat dort jemand noch nie Tetris gespielt oder er hat bereits einige Zeilen vollständig bekommen und somit neutralisiert
Anscheinend wird die ausgelesene Zahl nicht abgespeichert, oder sie wurde erst gar nicht korrekt ausgelesen.
Ausgelesen ist ein gutes Stichwort, schonmal die Fehlermeldung gelesen, die dir die Dosenbüchse liefert?greetz André
@T-Mo: O:\chsen\test.cmd?
LÖSUNG 23.08.2011 um 22:54 Uhr
LÖSUNG 24.08.2011 um 07:41 Uhr