Freier Festplattenspeicher per Batchdatei ermitteln
Hallo,
ich bin noch ein blutiger Anfänger in der Batchprogrammierung und soll nun eine Abfrage erstellen:
- die mir sagt, wieviel Festplattenspeicher noch vorhanden ist
- und wenn das geschafft ist soll es ne Warnung per Mail generieren.
bisher habe ich keinen befehl gefunden der das tut. daher hab ich mir da was zusammen gesetzt:
Dir |findstr /c:"Bytes fre" >tmp.txt
da kommt dann eine Textdatei bei rum die wie folgt aussieht:
8 Verzeichnis(se), 72.803.454.976 Bytes frei
nun will ich nur die 72.803.454.975 als Variable haben, aus der txt datei ausgelesen. Soweit ich weiß gehts mit ner For Schleife, aber die versteh ich nicht. Kann mir da wohl wer helfen?
Vielen Dank im voraus!
Gruß Lani
ich bin noch ein blutiger Anfänger in der Batchprogrammierung und soll nun eine Abfrage erstellen:
- die mir sagt, wieviel Festplattenspeicher noch vorhanden ist
- und wenn das geschafft ist soll es ne Warnung per Mail generieren.
bisher habe ich keinen befehl gefunden der das tut. daher hab ich mir da was zusammen gesetzt:
Dir |findstr /c:"Bytes fre" >tmp.txt
da kommt dann eine Textdatei bei rum die wie folgt aussieht:
8 Verzeichnis(se), 72.803.454.976 Bytes frei
nun will ich nur die 72.803.454.975 als Variable haben, aus der txt datei ausgelesen. Soweit ich weiß gehts mit ner For Schleife, aber die versteh ich nicht. Kann mir da wohl wer helfen?
Vielen Dank im voraus!
Gruß Lani
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 94660
Url: https://administrator.de/forum/freier-festplattenspeicher-per-batchdatei-ermitteln-94660.html
Ausgedruckt am: 04.04.2025 um 14:04 Uhr
3 Kommentare
Neuester Kommentar
Hallo -XlaniX- und willkommen im Forum!
Ohne Temporärdateien:
Noch eine Anmerkung: Es könnte schwierig werden, das Ergebnis in Batch (exakt) weiterzuverarbeiten - die größte für Berechnungen verwendbare Zahl ist in Batch nämlich 2147483647 ...
Workaround: Du schneidest einfach eine entsprechende Anzahl von Stellen am Ende ab, etwa:
Für mehr Info: "set /?"
Grüße
bastla
Ohne Temporärdateien:
@echo off & setlocal
for /f "tokens=3" %%i in ('dir /-c^|findstr /c:"Bytes frei"') do set "Frei=%%i"
echo %Frei%
Workaround: Du schneidest einfach eine entsprechende Anzahl von Stellen am Ende ab, etwa:
set KB=%Frei:~,-3%
Grüße
bastla