Dateien und Verzeichnisse inventarisieren-auflisten?
Moin,
ich suche ein Programm/Tool mit dem ich eine Festplatte/Partition auflisten/inventarisieren kann. Gibt es soetwas? Mit dem CMD Befehlen listet der rechner mir alles in einer txt datei auf, dieses ist aber recht unübersichtlich.
Mir wäre die auflistung recht dateiname - dateipfad oder dateipfad\dateiname. Eventuell noch die größe dahinter. Oder kann man das über ein Excel VB script realisieren?
ich suche ein Programm/Tool mit dem ich eine Festplatte/Partition auflisten/inventarisieren kann. Gibt es soetwas? Mit dem CMD Befehlen listet der rechner mir alles in einer txt datei auf, dieses ist aber recht unübersichtlich.
Mir wäre die auflistung recht dateiname - dateipfad oder dateipfad\dateiname. Eventuell noch die größe dahinter. Oder kann man das über ein Excel VB script realisieren?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 68644
Url: https://administrator.de/forum/dateien-und-verzeichnisse-inventarisieren-auflisten-68644.html
Ausgedruckt am: 14.04.2025 um 14:04 Uhr
11 Kommentare
Neuester Kommentar

Hallo,
DirTree wäre was, ist Freeware.
mfg
DirTree wäre was, ist Freeware.
mfg
Hallo DerParte!
Auf die Schnelle: Die folgende CMD-Zeile (Eingabe direkt an der Kommandzeile) schreibt zum Testen den Inhalt des Desktops in eine Textdatei, die Du dann in Excel importieren kannst (Trennzeichen Semikolon):
Für das gesamte Laufwerk C: wäre das dann
Allerdings solltest Du dann schon Excel 2007 für den Import zur Verfügung haben (da ansonsten bei 65536 Einträgen Schluss ist).
Grüße
bastla
Auf die Schnelle: Die folgende CMD-Zeile (Eingabe direkt an der Kommandzeile) schreibt zum Testen den Inhalt des Desktops in eine Textdatei, die Du dann in Excel importieren kannst (Trennzeichen Semikolon):
for /f "delims=" %i in ('dir "%userprofile%\Desktop" /s /b') do @echo %i;%~zi >> C:\DesktopInhalt.txt
for /f "delims=" %i in ('dir C:\*.* /s /b') do @echo %i;%~zi >> C:\InhaltC.txt
Grüße
bastla
Moin DerParte,
ich möchte lieber, statt hier eine Skriptlösung zu posten, eher anregen, diesen Plan zu überdenken.
Und danach als Dönekens fallenzulassen.
Die Auflistung von Unterverzeichnissen und gar Dateien machte früher bei 5,25-Zoll-Floppys Sinn, auch noch bei 3,5-Zoll-Disketten.
Bei CDs auch nur dann, wenn dort 16 Musikstücke drauf sind - selbst eine Katalogisierung dieser Beipack-CDs der Tankstellen-PC-Zeitschriften wäre heutzutage eine Aufgabe, für die sich nicht mal umgeschulte Postbeamte begeistern könnten.
Auf einem Windows-Rechner ist es total absurd, weil die vermeintliche Strukturierung der Partitionen/Festplatte nur in Ausnahme-Fällen etwas aussagt.
Okay, wenn Du Dir Selber eine Struktur angelegt hast für gleichartige Dateien (Musik, Urlaubsfotos, Excel-Dienstpläne oder Word-Protokolldateien von F.D.P.-Ortsverein-Sitzungen...) - in diesen paar konstruierbaren Fällen bringt die Katalogisierung von bestimmten Verzeichnissen vielleicht etwas. (Wenn auch nur die Erkenntnis: "Upps, am 13. April hatte ich das Protokoll aber noch...").
Für Verzeichnisse, die "c:\Windows\System32" oder auch "c:\temp" heißen oder "c:\Gemeinsame Dateien".... was willst Du da je wiederfinden???
Oder wie rekonstruieren, wozu eine bestimmte DLL gehört?
Abgesehen davon... rein rechnerisch - bei 100000 Dateien in 14874 Verzeichnissen auf Festplatte C: .. wenn Du das eben mal absuchen willst nach einer Datei.... Du wirst sicherlich keine Listen durchblättern. Weder in Aktenordnern noch am Bildschirm.
Kurz gefasst: Eine Protokollierung der vorgebenen Windows-Rechner-Plattenstruktur bringt Dir gar nichts.
Aber Du kannst punktuell für bestimmte Themen/Projekte eigene Strukturen entwickeln.
Oder für bestimmte Sachverhalte bestehende Tools nutzen (für MP3s, für Projekte, zur Dokumentenverwaltung, zur Versionsverwaltung, zur Inventarisierung installierter Software, ...)
Grüße
Biber
ich möchte lieber, statt hier eine Skriptlösung zu posten, eher anregen, diesen Plan zu überdenken.
Und danach als Dönekens fallenzulassen.
Die Auflistung von Unterverzeichnissen und gar Dateien machte früher bei 5,25-Zoll-Floppys Sinn, auch noch bei 3,5-Zoll-Disketten.
Bei CDs auch nur dann, wenn dort 16 Musikstücke drauf sind - selbst eine Katalogisierung dieser Beipack-CDs der Tankstellen-PC-Zeitschriften wäre heutzutage eine Aufgabe, für die sich nicht mal umgeschulte Postbeamte begeistern könnten.
Auf einem Windows-Rechner ist es total absurd, weil die vermeintliche Strukturierung der Partitionen/Festplatte nur in Ausnahme-Fällen etwas aussagt.
Okay, wenn Du Dir Selber eine Struktur angelegt hast für gleichartige Dateien (Musik, Urlaubsfotos, Excel-Dienstpläne oder Word-Protokolldateien von F.D.P.-Ortsverein-Sitzungen...) - in diesen paar konstruierbaren Fällen bringt die Katalogisierung von bestimmten Verzeichnissen vielleicht etwas. (Wenn auch nur die Erkenntnis: "Upps, am 13. April hatte ich das Protokoll aber noch...").
Für Verzeichnisse, die "c:\Windows\System32" oder auch "c:\temp" heißen oder "c:\Gemeinsame Dateien".... was willst Du da je wiederfinden???
Oder wie rekonstruieren, wozu eine bestimmte DLL gehört?
Abgesehen davon... rein rechnerisch - bei 100000 Dateien in 14874 Verzeichnissen auf Festplatte C: .. wenn Du das eben mal absuchen willst nach einer Datei.... Du wirst sicherlich keine Listen durchblättern. Weder in Aktenordnern noch am Bildschirm.
Kurz gefasst: Eine Protokollierung der vorgebenen Windows-Rechner-Plattenstruktur bringt Dir gar nichts.
Aber Du kannst punktuell für bestimmte Themen/Projekte eigene Strukturen entwickeln.
Oder für bestimmte Sachverhalte bestehende Tools nutzen (für MP3s, für Projekte, zur Dokumentenverwaltung, zur Versionsverwaltung, zur Inventarisierung installierter Software, ...)
Grüße
Biber
Hallo!
Erstmal vielen Dank an bastla, was er hier gepostet hat ist so ziemlich genau die Lösung meines Problems.
Allerdings hätte ich noch drei Fragen dazu:
1. Wie kriege ich weitere Informationen vom dir-Befehl geliefert? Momentan ist ja nur der Pfad mit Dateinamen sowie die Dateigröße in der Ausgabe enthalten.
Ich hätte gerne noch das Datum, ebenfalls durch ein Trennzeichen separiert.
2. Kann ich die Ausgabe des dir-Befehls auch anders formatieren? Zum einen hätte ich gerne einen Tabulator als Trennzeichen, zum anderen wäre es super wenn ein Trennzeichen zwischen Dateiname und dem dazugehörigen Pfad steht.
3. Ich verstehe ehrlich gesagt den Befehl nicht wirklich, habe aber den Eindruck dass die Ausgabe Zeilenweise erfolgt (d.h. für jede gefundene Datei eine Operation). Kann ich noch zusätzlich ein Programm aufrufen welches mit der jeweils aktuell bearbeiteten Datei etwas macht, beispielsweise eine Prüfsumme berechnet? Dazu müßte mir jemand erklären wie ich den kompletten Dateipfad (mit Namen) als Parameter erhalte und weitergeben kann und die Ausgabe in dieselbe Datei bekomme.
Beispielsweise
Das ganze soll mir helfen meine Festplatte aufzuräumen. Ich habe viele Dateien als Mehrfachkopie herumfliegen, teilweise mit anderen Dateinamen (oft nur wie in "Dateiname (1).ext" ), teilweise mit gleicher Größe, gleichem Namen (in anderen Verzeichnissen) aber unterschiedlichem Inhalt (Sammlungen von Savegames beispielsweise und etliche Sicherheitskopien davon).
Optimal wäre es natürlich wenn er, sollten die Prüfsummen übereinstimmen, alle identischen Dateien bis auf die älteste löscht. Aber das kriege ich evl. mit einer geschickt sortierten und zurechtgestutzten Tabelle hin (so ist mein Plan).
Vielen Dank schonmal!
specialsymbol
Erstmal vielen Dank an bastla, was er hier gepostet hat ist so ziemlich genau die Lösung meines Problems.
Allerdings hätte ich noch drei Fragen dazu:
1. Wie kriege ich weitere Informationen vom dir-Befehl geliefert? Momentan ist ja nur der Pfad mit Dateinamen sowie die Dateigröße in der Ausgabe enthalten.
Ich hätte gerne noch das Datum, ebenfalls durch ein Trennzeichen separiert.
2. Kann ich die Ausgabe des dir-Befehls auch anders formatieren? Zum einen hätte ich gerne einen Tabulator als Trennzeichen, zum anderen wäre es super wenn ein Trennzeichen zwischen Dateiname und dem dazugehörigen Pfad steht.
3. Ich verstehe ehrlich gesagt den Befehl nicht wirklich, habe aber den Eindruck dass die Ausgabe Zeilenweise erfolgt (d.h. für jede gefundene Datei eine Operation). Kann ich noch zusätzlich ein Programm aufrufen welches mit der jeweils aktuell bearbeiteten Datei etwas macht, beispielsweise eine Prüfsumme berechnet? Dazu müßte mir jemand erklären wie ich den kompletten Dateipfad (mit Namen) als Parameter erhalte und weitergeben kann und die Ausgabe in dieselbe Datei bekomme.
Beispielsweise
java -jar jacksum.jar "Dateiname komplett mit Pfad hier" > Ausgabe hierhin
Das ganze soll mir helfen meine Festplatte aufzuräumen. Ich habe viele Dateien als Mehrfachkopie herumfliegen, teilweise mit anderen Dateinamen (oft nur wie in "Dateiname (1).ext" ), teilweise mit gleicher Größe, gleichem Namen (in anderen Verzeichnissen) aber unterschiedlichem Inhalt (Sammlungen von Savegames beispielsweise und etliche Sicherheitskopien davon).
Optimal wäre es natürlich wenn er, sollten die Prüfsummen übereinstimmen, alle identischen Dateien bis auf die älteste löscht. Aber das kriege ich evl. mit einer geschickt sortierten und zurechtgestutzten Tabelle hin (so ist mein Plan).
Vielen Dank schonmal!
specialsymbol
Hallo specialsymbol!
Zu 1.-3.: Lässt sich machen - der Batch sähe etwa so aus:
Es gibt allerdings für die Ermittlung von MD5-Summen bessere Alternativen (etwa MD5Summer) und vor allem zum Entfernen von Duplikaten ist eines der vielen (Freeware-)Programme (zB CloneSpy) einer Batch-Lösung vorzuziehen.
Grüße
bastla
Ich verstehe ehrlich gesagt den Befehl nicht wirklich
Vielleicht wird's besser, wenn Du die Online-Hilfe konsultierst:dir /?
for /?
@echo off & setlocal
for /f "delims=" %%i in ('dir C:\*.* /s /b') do (
echo %%~ti %%~zi %%~dpi %%~nxi
java -jar jacksum.jar "%%i" >> Ausgabe hierhin
)
Grüße
bastla
Nein, die Verständnisprobleme liegen eher bei den ganzen Parametern, deren Funktionen etc. Ich lese mir gerade eine WikiBook "Batchbefehle" durch welches hier unter Anleitungen erwähnt wurde, allerdings fehlt da schon der Befehl "delims="- ich weiß also nicht was der macht.
Aha, sehe gerade in der for-Hilfe steht da was drüber (wußte nicht das for /? eine eigene Hilfe ergibt).
Vielen Dank! Ich probiere das gleich mal aus. Und danke für den Tipp mit CloneSpy- werde ich auch testen. Allerdings habe ich so auch eine Calc-Tabelle mit den ganzen Dateinamen und den zugehörigen Hashwerten, finde ich auch ganz nett.
Gruß
specialsymbol
Aha, sehe gerade in der for-Hilfe steht da was drüber (wußte nicht das for /? eine eigene Hilfe ergibt).
Vielen Dank! Ich probiere das gleich mal aus. Und danke für den Tipp mit CloneSpy- werde ich auch testen. Allerdings habe ich so auch eine Calc-Tabelle mit den ganzen Dateinamen und den zugehörigen Hashwerten, finde ich auch ganz nett.
Gruß
specialsymbol
Super, danke! Hab mich schon gewundert und das Problem mit den Leerzeichen in Pfaden hatte ich auch schonmal. So geht das also.
Hier ist jetzt die fertige Batchdatei, sie funktioniert und läuft gerade durch:
Ich habe auch den Zeilenumbruch weggekriegt zwischen den einzelnen Ausgaben Echo ohne Zeilenumbruch und ähnliche Spielereien
Die Ausgabe sieht so allerliebst aus:
Die Dateigröße und das Datum habe ich nur zum Spaß doppelt, die Spalten kann ich später in OpenOffice.Calc einfach löschen. Kostet ja keine Zeit (vielleicht 5 Sekunden zum markieren und löschen).
Danke nochmal für die große Hilfe!
Hier ist jetzt die fertige Batchdatei, sie funktioniert und läuft gerade durch:
@echo off & setlocal
for /f "delims=" %%i in ('dir "H:\Sicherung 2008\*.*" /a:-d /s /b') do (
<nul set /p =%%~dpi %%~nxi %%~zi %%~ti %%~ni %%~xi >> e:\liste.txt
call javaw -jar jacksum.jar -a md5+crc32 -s \t -t "default" -E hexup -F "#FILENAME #SEPARATOR #FILESIZE bytes #SEPARATOR #TIMESTAMP #SEPARATOR #ALGONAME{0}: #CHECKSUM{0} #SEPARATOR #ALGONAME{1}: #CHECKSUM{1}" "%%i" >> e:\liste.txt
)
Ich habe auch den Zeilenumbruch weggekriegt zwischen den einzelnen Ausgaben Echo ohne Zeilenumbruch und ähnliche Spielereien
Die Ausgabe sieht so allerliebst aus:
H:\Sicherung 2008\ Gesamtliste.txt 375465 17.11.2008 15:01 Gesamtliste .txt H:\Sicherung 2008\Gesamtliste.txt 375465 bytes 17.11.2008 15:01 md5: 81389D1D1BC283D5AB54D87A699C94D2 crc32: C4752B067008F578
Die Dateigröße und das Datum habe ich nur zum Spaß doppelt, die Spalten kann ich später in OpenOffice.Calc einfach löschen. Kostet ja keine Zeit (vielleicht 5 Sekunden zum markieren und löschen).
Danke nochmal für die große Hilfe!