Mit WizTree automatisch die Laufwerksbelegung erfassen

WizTree ist ein sehr nützliches Tool um die Speicherplatzbelegung von Laufwerken oder Ordnern anzeigen zu lassen. Mit Hilfe der Kommandozeile oder einem Skript lässt sich der Vorgang sogar automatisieren. So können Änderungen über eine Zeitraum gut protokolliert werden.

In der Online-Dokumentation sind alle notwendigen Parameter gut beschrieben:

https://www.diskanalyzer.com/guide#cmdlinecsv

In Form eines kleines Batch-Skript kann das Ganze so aussehen;

@echo off

rem Datum/Uhrzeit konvertieren und eine eine Variabe schreiben
rem z.B. "2024-08-04_12-01"

 rem %d-%t funktioniert irgendwie nicht, daher folgendes

 set TIMESTAMP=%date:~-4%-%date:~-7,2%-%date:~-10,2%_%time:~-11,2%-%time:~-8,2%

rem WizTree ausfuehren

 WizTree64.exe "D:\Backup" /export="D-Backup-%TIMESTAMP%.csv" /admin=1 /exportfolders=1 /exportfiles=0 /sortby=2 /exportmftrecno=0

Wie man sieht, wurden die Original-Variablen %d und %t ersetzt, da diese dem Test nach leider nicht funktionieren.

Das Skript kann regelmäßig als Aufgabe ausgeführt werden. Die so erzeugten CSV-Dateien können in der Tabellenkalkulation der Wahl ausgewertet oder direkt in WizTree geöffnet werden. Letzteres hat den Vorteil das man den jeweiligen Stand sofort ohne Umwege angezeigt bekommt.

Update 08.08.2024

Die Sache mit den Variablen von WizTree selbst ist geklärt. Vielen Dank an “Smith” (siehe Kommentare).

Direkt in der Eingabeaufforderung muss der Befehl so aussehen:

WizTree64.exe "D:\Backup" /export="D-Backup-%d-%t.csv" /admin=1 /exportfolders=1 /exportfiles=0 /sortby=2 /exportmftrecno=0

Und als Batch-Skript so:

WizTree64.exe "D:\Backup" /export="D-Backup-%%d-%%t.csv" /admin=1 /exportfolders=1 /exportfiles=0 /sortby=2 /exportmftrecno=0

Man beachte die unterschiedliche Anzahl der Prozentzeichen!

3 Kommentare

  1. Smith

    In a batch file you have to double the % symbols. Like this: %%t and %%d

  2. Andy

    Thanks for your comment.
    The blog-post got an update.

  3. Christian Urban

    Zur Verwendung eines TimeStamp in Dateinamen nutze ich immer den folgenden Zweizeiler:

    set ts=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%_%TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%
    set ts=%ts: =0%

    Dabei werden die Leerzeichen noch gegen 0 getauscht, sonst gibt es Stress von Mitternacht bis 10 Uhr… 😉

    Für hübsche Bildschirmausgaben / Textprotokolle frage ich freundlich bei ROBOCOPY nach:
    ROBOCOPY /?
    gibt immer einen ordentlich formatierten String mit ausgeschriebenem Wochentag und Monat aus,
    den man dann in einer FOR-Schleife hinter dem Text „Gestartet“ abgreifen kann… hängt natürlich von der Sprache des verwendeten OS ab.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

© 2024 Andy's Blog

Theme von Anders NorénHoch ↑