batch ordnergröße Berechnen
Hallo,
also mein Problem ist, dass ich eine batch datei schreiben will,
die daten sichert.
Also meine Datei kopiert jetzt sachen von a nach b.
Aber jetzt kommt das Problem.
Ich wollte vorher abfragen, wieviel speicherplatz noch auf
dem ziellaufwerk vorhanden ist. Dies bekomme ich auch aber
was ich nocht nicht hin bekomme ist,
das ich abfragen kann wie groß meine Ordner sind die ich kopieren will.
Dies muss ich wissen um das mit der gesamtgröße verlgiechen zu können.
Ich kann bis jetzt nur die größte einer datei abfragen aber nicht die größe eines
Ordners.
gruß
Raphael
also mein Problem ist, dass ich eine batch datei schreiben will,
die daten sichert.
Also meine Datei kopiert jetzt sachen von a nach b.
Aber jetzt kommt das Problem.
Ich wollte vorher abfragen, wieviel speicherplatz noch auf
dem ziellaufwerk vorhanden ist. Dies bekomme ich auch aber
was ich nocht nicht hin bekomme ist,
das ich abfragen kann wie groß meine Ordner sind die ich kopieren will.
Dies muss ich wissen um das mit der gesamtgröße verlgiechen zu können.
Ich kann bis jetzt nur die größte einer datei abfragen aber nicht die größe eines
Ordners.
gruß
Raphael
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 78428
Url: https://administrator.de/contentid/78428
Ausgedruckt am: 22.11.2024 um 09:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo Truble!
Je nachdem, ob Du die Ordnergröße inkl aller enthaltenen Unterordner oder nur die Größe der im angegebenen Ordner enthaltenen Dateien benötigst, kannst Du eine der beiden Varianten verwenden. Das Ergebnis wird aufgerundet auf ganze MB ausgegeben. Genauer wird es, wenn Du auf KB rechnest (und daher nur einmal durch 1024 dividierst); das müsstest Du dann natürlich auch bei der Berechnung des freien Speicherplatzes so handhaben.
Grüße
bastla
@echo off & setlocal
set "Ordner=D:\Test"
set "FS=%temp%\GetFolderSize.vbs
echo WScript.Echo Int(CreateObject("Scripting.FileSystemObject").GetFolder(WScript.Arguments(0)).Size/1024/1024+.99)>%FS%
for /f %%i in ('cscript //nologo %FS% "%Ordner%"') do set OGr=%%i
echo Groesse des Ordners %Ordner% inkl Unterordner: %OGr% MB
echo Set fso=CreateObject("Scripting.FileSystemObject"):Set Fld=fso.GetFolder(WScript.Arguments(0))>%FS%
echo For Each File In Fld.Files:S=S+File.Size:Next:WScript.Echo Int(S/1024/1024+.99)>>%FS%
for /f %%i in ('cscript //nologo %FS% "%Ordner%"') do set OGr=%%i
echo Groesse des Ordners %Ordner% ohne Unterordner: %OGr% MB
del %FS%
Grüße
bastla