2016-07-21 21 views
0

ich eine voll automatisierte Möglichkeit der laufenden Datenträgerbereinigung möchten, wenn fsutil Volumen Diskfree c: Erträge unter, sagen wir, 50 GB. Zurzeit habe ich cleanmgr/sageset: 1 verwendet und meine Einstellungen gespeichert, sodass der Prozess zur Hälfte automatisiert ist. Aber wenn es die Menge an freiem Speicherplatz zurückgibt, gibt es eine Möglichkeit für Windows, dies zu lesen. Beachten Sie, dass dies in einer Batch-Datei enthalten ist, so dass ich diese nicht manuell anzeigen kann. Danke für jede Hilfe!Run Datenträgerbereinigung Wenn fsutil kehrt unter einer bestimmten Größe

+1

Möchten Sie, dass der Code mit einer Tasse Tee oder Kaffee serviert wird? Stackoverflow ist kein freier Code schriftlich Service, so müssen Sie es auf eigene Faust zunächst versuchen, und wenn stecken, wieder hier, zeigen Sie Ihre Bemühungen, beschreiben genau das, was Sie erreichen wollen und was Sie tatsächlich bekommen. Ohne eigene Recherchen wird diese Frage hier wahrscheinlich geschlossen. – aschipfl

+0

REM Run Cleanup IF EXIST% SystemRoot% \ system32 \ cleanmgr.exe START/WAIT cleanmgr/sagerun: 100. Ich laufe auch fsutil Volume diskfree c :. Ich weiß genau, was ich damit machen will. Ich brauche niemanden, um meinen Code zu schreiben, aber ich würde gerne wissen, ob es möglich ist, das Ergebnis von freiem Speicherplatz auf dem c: Laufwerk für die weitere Verwendung zu erhalten. – liltimmy

+0

Bitte senden Sie zusätzliche Informationen von [Bearbeitung] (http://stackoverflow.com/posts/38509133/edit) die Frage eher als ein Kommentar; Code sieht in Kommentaren schrecklich aus, kann aber im Hauptpostteil gut und lesbar formatiert werden ... – aschipfl

Antwort

1
@echo off 
setlocal 
set "pad=000000000000000" 
set "NeededSpace=%pad%4294967296" 
for /f "delims== tokens=2" %%x in (
    'wmic logicaldisk where "DeviceID='C:'" get FreeSpace /format:value' 
) do for %%y in (%%x) do set "FreeSpace=%pad%%%y" 
if "%FreeSpace:~-15%" geq "%NeededSpace:~-15%" echo Drive has at least 4 GB free space.