So ändern Sie die Dateierweiterungen vorhandener Dateien gleichzeitig

448
Faye

Gibt es eine Möglichkeit, die Dateierweiterungen vorhandener Dateien (in einem Ordner) gleichzeitig zu ändern?

Ich habe einen Ordner und darin befinden sich verschiedene Unterordner (verschachtelt). Alle Dateien sind .txt, und ich möchte sie in .md ändern.

Gibt es eine Möglichkeit, diese gleichzeitig zu ändern, oder muss ich sie wirklich einzeln ändern? :-(

Danke, Faye

Weitere Fragen:

@ user1016274: Danke. Funktioniert es übrigens auch mit Dateien ohne Erweiterungen? Ich habe es noch nicht ausprobiert, aber ich habe gerade entdeckt, dass einige Ordner Dateien ohne Erweiterung haben. Pls sehen das Bild, das ich hinzugefügt habe (oben), Pls sehen es. Vielen Dank.

So ändern Sie die Dateierweiterungen vorhandener Dateien gleichzeitig

1
Führen Sie `cmd` aus, wechseln Sie in das Verzeichnis, in dem sich die Dateien befinden, und geben Sie` ren * .txt * .md` ein. AFH vor 6 Jahren 0
@AFH: Danke für die Antwort, aber diese Lösung ist in meinem Fall nicht gut, da ich mehrere tief verschachtelte Ordnerstrukturen habe. Das würde bedeuten, dass ich es in jedem einzelnen Ordner tun muss, in jedem einzelnen Unterordner, in jedem Ordner in allen Unterordnern usw. Gibt es eine andere Lösung? Danke, Faye .. Faye vor 6 Jahren 0
Wenn ich an meinem Computer gewesen wäre, als Sie geantwortet haben, hätte ich Ihnen die Antwort von [user1016274] (https://superuser.com/users/438316/user1016274) gegeben. Beachten Sie, dass "ren" und "rename" Synonyme sind. AFH vor 6 Jahren 0

1 Antwort auf die Frage

2
user1016274

Der renameBefehl lässt einen Platzhalter zu: Ermöglicht
rename *.txt *.mddas Umbenennen aller Dateien in einem Aufruf im aktuellen Verzeichnis.

Jetzt müssen Sie nur noch alle Verzeichnisse vom Stammverzeichnis aus durchsuchen. Dafür gibt es einen forBefehl:
cd /d <rootdir> & for /R %d in (.) do @echo %d

Alles zusammenstellen:

cd /d <rootdir> for /R %d in (.) do @rename "%d\*.txt" *.md 
Können Sie mir bitte ein bisschen klarer machen. Muss ich das so eingeben, wie es ist, und ich muss nur das ändern und setze meinen Verzeichnisnamen, dh: ? Danke, Faye Faye vor 6 Jahren 0
Ja genau. Um sicherzugehen, können Sie einen Testlauf mit do @dir / b% d \ *. Txt durchführen. Für jedes Verzeichnis wird eine Fehlermeldung angezeigt, die keine '.txt'-Datei enthält. user1016274 vor 6 Jahren 0
Danke, ich werde später zu Hause damit experimentieren und dies als richtige Antwort markieren, wenn ich es richtig verstanden habe. Vielen Dank. Faye vor 6 Jahren 0
Bitte beachten Sie: Ich habe Anführungszeichen hinzugefügt, um Verzeichnisse zu berücksichtigen, deren Namen Leerzeichen enthalten. Zweitens ist die Syntax korrekt, um den Befehl von einer Befehlszeile aus auszuführen, nicht innerhalb einer Batchdatei. Innerhalb einer Batch-Datei müssen Sie jedes '%'-Zeichen verdoppeln. user1016274 vor 6 Jahren 0
Vielen Dank. Funktioniert es übrigens auch mit Dateien ohne Erweiterungen? Ich habe es noch nicht ausprobiert, aber ich habe gerade entdeckt, dass einige Ordner Dateien ohne Erweiterung haben. Pls sehen das Bild, das ich hinzugefügt habe (oben), Pls sehen es. Vielen Dank. Das sind auch Textdateien (Buchgeschichten), ich kann sie in VS-Code anzeigen und bearbeiten, aber sie haben keine Erweiterungen. Faye vor 6 Jahren 0
Ja, wenn Sie die Erweiterung weglassen, werden alle Dateien umbenannt: `Umbenennen von"% d \ * "* .md`. user1016274 vor 6 Jahren 0