So exportieren Sie Dateinamen (nur Bilddateien) von verschiedenen Speicherorten oder Verzeichnissen in eine Textdatei

So exportieren Sie Dateinamen (nur Bilddateien) von verschiedenen Speicherorten oder Verzeichnissen in eine Textdatei

Wie im Titel erwähnt, muss ich die Dateinamen verschiedener Bilddateien aus verschiedenen Verzeichnissen als Liste in eine einzelne Textdatei exportieren. Wie gehe ich bei einer solchen Aufgabe vor?

Zweitens: Wäre es möglich, die in der Textdatei aufgeführten Dateinamen teilweise zu entfernen? Bitte sehen Sie sich den Screenshot an:

Bildbeschreibung hier eingeben

Ich muss den Dateinamen „HS3-HTS-“ entfernen und nur die Nummer als Dateinamen belassen.

Benötige ich zum Ausführen dieser Aufgabe eine Eingabeaufforderung oder gibt es eine andere Lösung?

Ich habe einen ... gefundenVerknüpfunghier, aber es wurde nicht erklärt, wie man nur Bilddateien auswählt. Jede Hilfe wird geschätzt. Vielen Dank im Voraus.

Antwort1

Angenommen, Sie möchten die Dateierweiterungen jpg, jpeg, gif und png und angenommen, Sie möchten die Dateinamen aus dem aktuellen Verzeichnis abrufen:

powershell "dir *.jpg,*.jpeg,*.gif,*.png | ForEach-Object {echo ($_.BaseName -replace 'HS3-HTS-', '')}" > Output.txt

Wenn eine rekursive Suche erforderlich ist, um Dateien in mehreren Verzeichnissen mit einem einzigen Befehl zu finden, funktioniert möglicherweise Folgendes (ersetzen Sie einfach „C:\“ durch das gewünschte Laufwerk oder Basisverzeichnis):

powershell "Get-ChildItem -Path C:\ -Recurse -Include *.jpg,*.jpeg,*.gif,*.png | ForEach-Object {echo ($_.BaseName -replace 'HS3-HTS-', '')}" > Output.txt

Beachten Sie, dass beide der obigen Beispiele die Liste in eine Datei namens "Output.txt" im aktuellen Verzeichnis ablegen.Aktuelles Verzeichnis, ich meine das Verzeichnis, das über die Eingabeaufforderung angezeigt wird. Wenn Sie die Ausgabe direkt in der Eingabeaufforderung sehen möchten, ohne eine Datei öffnen zu müssen, lassen Sie > Output.txtin den obigen Befehlen einfach das letzte weg. Beachten Sie auch, dass die obigen Befehle, obwohl sie auf PowerShell basieren, so formuliert wurden, dass sie in der normalen Eingabeaufforderung ausgeführt werden. Der Teil „powershell“ weist PowerShell an, den Befehl mit PowerShell zu analysieren.

verwandte Informationen