hugohugo
Goto Top

Löschen in Abhängigkeit vom verfügbaren Speicherplatz

Hallo Allerseits,


ich sichere meine Daten per simplen copy-job auf wechselnde externe HDDs. Jeden Abend wird ein nach Tagesdatum benannter Ordner erstellt und dort die Daten hinkopiert. Um zu verhindern, daß die Platten überlaufen würde ich jetzt gerne sobald ein bestimmter Wert (z.B. 50 GB) an freiem Speicher unterschritten wird die Platte freimachen. Mir schießen jetzt komplexe Codekonstrukte durch den Kopf aber eigentlich wäre es mir lieber meine 3zeilige backup.bat 4zeilig zu machen. Kann man das in 1-2 Zeilen in einem simplen Batch (w2k3) lösen?


Gruß
Hugo

Content-Key: 241823

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

Printed on: April 24, 2024 at 20:04 o'clock

Member: hugohugo
hugohugo Jun 25, 2014 at 11:46:53 (UTC)
Goto Top
Jetzt bin ich etwas verwirrt. Ich habe gerade bei der Antwort die meine Frage gelöst hat auf "Gefällt mir" geklickt und die Antwort verschwindet....Hmmmm.

Vielen Dank Uwe, das wars, nur war am Anfang noch ein %-zeichen zu viel.

Gruß
Hugo

set Drive=z.Bsp. E:
for /f "tokens=2 delims==" %a in ('wmic logicaldisk where Name^="%drive%" get freespace /format:list ^| findstr /i "FreeSpace"') DO @(if %%a LSS 50000000000 rd %drive% /s /q )
Member: colinardo
colinardo Jun 25, 2014 updated at 13:03:07 (UTC)
Goto Top
entfernt ...

-edit-
set drive=E:
for /f %%a in ('powershell "(gwmi Win32_LogicalDisk | ?{$_.DeviceID -eq \"%drive%\"}).Freespace -lt 50GB"') DO @(if /i "%a" == "True" rd %drive% /s /q)

Grüße Uwe
Member: Gersen
Gersen Jun 25, 2014 at 11:54:54 (UTC)
Goto Top
Hallo,

n.m.M. wird das

if %%a LSS 50000000000

an der Zahlenobergrenze 2147483647 scheitern, oder?

Gruß,
Gersen
Member: colinardo
colinardo Jun 25, 2014 at 11:57:02 (UTC)
Goto Top
Zitat von @Gersen:
an der Zahlenobergrenze 2147483647 scheitern, oder?
stimmt, das hatte ich nicht bedacht
Member: hugohugo
hugohugo Jun 25, 2014 at 12:27:23 (UTC)
Goto Top
Also ich habe damit eben erfolgreich meinen USB-Stick unter Win7-64 gelöscht. Fast hätte ich es abgeschickt ohne zu bedenken, das meine Daten hier auf E: liegen *unauffälligpfeif* face-wink