Verzeichnisinhalt als Liste drucken

Glaubt man dem Internet gibt es für jede Aufgabe ein entsprechendes Tool zum Download. Nicht immer wird es dabei sinnvoll sein, irgendetwas irgendwo herunterzuladen. Zum Einen müllt man so fröhlich die Festplatte zu, zum Anderen öffnet man so möglicher Schadsoftware Tür und Tor, da nicht jeder Anbieter, der etwas kostenlos verteilt, lediglich der gutmütige Programmierer von nebenan ist.

Die eigentliche Lösung steht auch schon auf dem Computer bereit – nur nicht immer so offensichtlich, wie man es sich wünscht: Wagen wir einen Blick auf die Kommandozeile.

Aufruf der Eingabeaufforderung

Wie von Windows gewohnt, gibt es mehrere Wege, die zum Ziel führen. Die Eingabeaufforderung wird aufgerufen durch Klick auf die Windows-Startfläche oder durch Klick auf die Suche. Nun einfach die Zeichenfolge cmd eintippen, Return drücken und es öffnet sich das entsprechende Fenster. Eine ähnlich einfache Alternative ist der Aufruf der „Ausführen…“-Konsole über „Windowstaste“ und „R“. Über den gleichen Befehlsaufruf cmd öffnet das Fenster.

Liste der Dateinamen in einem Ordner ausdrucken

Der Windows-Explorer bietet keine Möglichkeit an, die Liste aller Dateinamen in einem Ordner auszudrucken. Über die Kommandozeile wird dies möglich. Syntax:

dir /b PfadZumOrdner > Dateiliste.txt

Es wird eine Liste aller Dateien und Unterordner im txt-Format erzeugt. Ohne weitere Pfadangabe wird diese im Benutzer-Ordner erstellt. Der Pfad zum Ordner kann aus der Adresszeile im Windows-Exporer kopiert und über die rechte Maustaste in die Kommandozeile eingefügt werden. Hinweis: Es kann Probleme geben, wenn die Verzeichnisse der Pfadangabe Leerzeichen beinhalten. Dann muss der Pfad in Anführungszeichnis gesetzt werden, zum Beispiel:

dir /b "C:\Program Files (x86)" > Ordnerliste.txt

Pimp my Dateiliste

Nun liegen in einem Ordner gerne nicht nur Dateien, sondern auch Unterordner. Sollen diese auch berücksichtigt und deren Inhalt mitgelistet werden, wird der Parameter /s ergänzt:

dir /s /b C:\Users\Benutzer\Documents > C:\Ordnerliste.txt

Doch stellt sich damit die Frage, ob eine solche Listung noch hilfreich ist. Ein Filter wäre schön, so dass etwa nur Word-Dokumente genannt werden sollen. Dies geht über einen Filter:

dir /s /b C:\Users\Benutzer\Documents\*.docx > C:\Dokumentliste.txt

Wenn die ausgegebene Liste gleich weiterverarbeitet werden soll, würde es sich anbieten, das Ergebnis nicht erst in eine Text-Datei zu speichern, sondern direkt in die Zwischenablage. Dies funktioniert mit clip:

dir /s /b C:\Users\Benutzer\Documents\*.docx | clip

Und wo wir gerade bei clip sind: Ganz einfach den Dateiinhalt in die Zwischenablage kopieren kann man über:

clip < C:\Ordnerliste.txt

Jetzt fehlt noch die Sortierung (order) der Dateien eines Ordners. Hierfür gibt es den Parameter \o gefolgt von einem Doppelpunkt und dem Attribut, nach dem sortiert werden soll. Also etwa n für Name oder s für Size (Dateigröße):

dir /b /o:n "C:\Program Files (x86)" > Ordnerliste.txt

Sollen auch Unterordner (/s) bei der Sortierung berücksichtigt werden, wird der Befehl sort mithilfe des Pipe-Zeichens ergänzt:

dir /b /s C:\Users\Benutzer\Documents\*.docx | sort > C:\Dokumentliste.txt
Schwerpunkt: ,