Zum Inhalt springen

Batch Datei: Gesamt/Belegte Speicher eines Laufwerks


davidy

Empfohlene Beiträge

Hi,

ich nutze in einer Batch Datei den "dir C: /-c" Befehl um den FREIEN Speicher als Bytes zu erhalten.

Aber wie bekomme ich (möglichst ohne Zusatztools, nur mit Hilfe der normalen unter Windows >= XP), den GESAMTEN, oder den BELEGTEN Speicher eines Laufwerks? (kann man ja umrechnen:-))

Gruß

Davidy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Mit einem VB-Script:

'--------------------------------------------------------------------

' Description

'--------------------------------------------------------------------


' Reports the size and free disk space of each drive from the current Computer


'--------------------------------------------------------------------

' Declarations

'--------------------------------------------------------------------


Option Explicit

'On Error Resume Next


const bytesToMB = 1048576

const bytesToGB = 1073741824

const bytesToTB = 1099511627776


'--------------------------------------------------------------------

' Variables

'--------------------------------------------------------------------


Dim strComputer: strComputer = "."


'---------------------------------------------------------------------

' Script

'---------------------------------------------------------------------


Dim objWMIService: Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Dim colItems: Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk")


Dim objItem

For Each objItem In colItems

	If objItem.Size > 1 Then

		If objItem.FreeSpace > 0 Then

			WScript.Echo objItem.Name & " " & ConvertToDiskUnit(objItem.Size) & " (" & ConvertToDiskUnit(objItem.FreeSpace) & " Free)"

		End If

	End If

Next


'---------------------------------------------------------------------

' Function

'---------------------------------------------------------------------


Function ConvertToDiskUnit(value) 

	IF (value/bytesToTb) > 1 THEN

		ConvertToDiskUnit = round(value/bytesToTB,1) & " TB"

	ELSEIF (value/bytesToGb) > 1 THEN

		ConvertToDiskUnit = round(value/bytesToGB,1) & " GB"

	ELSEIF	(value/bytesToMb) > 1 THEN

		ConvertToDiskUnit = round(value/bytesToMB,1) & " MB"

	ELSE

		Exit Function

	END IF

End Function

Für den belegten, kannst du ja den Freien vom Totalen abziehen.

Guss,

tester2k5

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...