from here Genommen:
mit dem folgenden Befehl Ordner th bei mehr als 100 MB in der Größe auf dem D: Laufwerk:
diruse /s /m /q:100 /d d:
Die Option/s Verzeichnisse, Festplattennutzung der Option/m zeigt in Megabyte gesucht werden verursacht, die/q: Verursacht 100 Option Ordner, sind größer als 100 MB, die markiert werden sollen, und die Option/d zeigt nur Ordner an, die den mit/q angegebenen Schwellenwert überschreiten.
Verwenden Sie den Befehl diskuse, um Dateien mit einer bestimmten Größe zu finden. Der folgende Befehl zeigt Dateien über 100 MB Größe auf dem Laufwerk D::
diskuse D: /x:104857600 /v /s
Der/x: 104857600 Option bewirkt, dass Dateien über 104.857.600 Bytes angezeigt werden und gilt nur, wenn Sie die Option/v enthalten (ausführlich). Die Option/s bedeutet, dass Unterverzeichnisse aus dem angegebenen Pfad (in diesem Fall das Laufwerk D:) gesucht werden.
VBSript
' This code finds all files over a certain size.
' ------ SCRIPT CONFIGURATION ------
strComputer = "**<ServerName>**"
intSizeBytes = 1024 * 1024 * 500 ' = 500 MB
' ------ END CONFIGURATION ---------
set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
set colFiles = objWMI.ExecQuery _
("Select * from CIM_DataFile where FileSize > '" & intSizeBytes & "'")
for each objFile in colFiles
Wscript.Echo objFile.Name & " " & objFile.Filesize/1024/1024 & "MB"
next
Hinweis: Dies funktioniert nur für eine Datei.Wenn Sie in der Lage sein möchten, eine Maske zu übergeben, um die Größe mehrerer Dateien zu erhalten, ändern Sie die zweite Zeile in etwas wie 'für %% I in (% 1) tun @echo %% ~ znI'. –
@Mike, aber was ist der Befehl, um die Anzahl der Bytes des gechannelten stdout zu zählen? (im Gegensatz zu gespeicherten Datei) – Pacerier
@ Pacerier, nicht sicher, ob das mit dieser Methode möglich ist. Die% ~ z-Variablen beziehen sich speziell auf eine Datei, die als Argument übergeben wird. Daher werden sie ihre Werte aus dem Dateisystem nachschlagen, anstatt einen dynamischen Datenstrom von Bytes. –