65984
Goto Top

Freier Festplattenspeicher auslesen

Mein Ziel ist es den freien Festplattenspeicher auszulesen.
Meine Variante wird im folgenden erklärt:

In einem kleinen Workaround habe ich schonmal den freien Speicher auslesen können.
Da ich den Wert nicht in bytes sondern in GB oder MB haben möchte, darf die Variable keine Punkte enthalten. Dazu wird Punkt 4. ausgeführt

1.
c:\dir > dir.txt

2.
for /F "Tokens=3" %i in (dir.txt) do Set harddisk=%i

2.1
echo %harddisk%

54.532.403.200

3.
echo %harddisk% >> hdd.txt

4.
for /F "tokens=1,2,3,4,5,6,7 delims=." %i in (hdd.txt) do Set hdd=%i%j%k%l%m%n%o

4.1
echo %hdd%
54532403200

5.
set /a ergebnis=%hdd%/1024

Mit dem set Befehl möchte ich meine Variable %hdd% mit 1024 dividieren, allerdings bekomme ich folgenden Fehler:
Ungültige Zahl. Zahlen sind begrenzt auf eine Genauigkeit von 32 Bits.

Kann mir da jemand weiterhelfen bzw. kennt jemand eine andere Lösung um den freien Festplattenspeicher auszulesen?

Dankeschonmal

Content-Key: 89710

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

Printed on: April 25, 2024 at 00:04 o'clock

Member: bastla
bastla Jun 12, 2008, updated at Oct 18, 2012 at 16:35:51 (UTC)
Goto Top
Hallo Azubi-DL!

1. bis 4. lässt sich zwar noch etwas straffen, zB:
for /f "tokens=3" %i in ('dir /-c') do set hdd=%i  
aber das eigentliche Problem ist die Angabe in Bytes - hier wirst Du zumindest eine gewisse Ungenauigkeit in Kauf nehmen (oder zB VBScript verwenden) müssen - wenn Du einfach die letzten 3 Stellen der Variablen %hdd% weg lässt, hast Du (ziemlich ungenaue) KB:
set /a ergebnis=%hdd:~,-3%
Ansonsten siehe zB hier ...

Grüße
bastla
Mitglied: 65984
65984 Jun 12, 2008 at 14:55:47 (UTC)
Goto Top
Die letzten drei Stellen wegzustreichen hab ich schon überlegt aber dann ist die Zahl doch immer noch zu groß oder?

Schau mir aufjedenfall deine Links an.

Danke für die Antwort


Gruß Azubi-DL
Mitglied: 65984
65984 Jun 13, 2008 at 08:40:31 (UTC)
Goto Top
Super klappt. Hab die Variante genommen hinten einfach 3 stellen abzuziehen und dividier dann mit 1024^2 so komm ich auf meine GB...

Vielen DANK;)
Member: bastla
bastla Jun 13, 2008 at 11:58:12 (UTC)
Goto Top
Hallo Azubi-DL!

Schau Dir bitte auch noch folgenden Link an: How can I mark a post as solved? face-wink

Grüße
bastla
Mitglied: 65984
65984 Jun 13, 2008 at 12:21:07 (UTC)
Goto Top
Sorry bin neu hier und wusste das nicht...

Danke face-smile