Gibt es eine Möglichkeit, Verzeichnisse rekursiv in eine .bat-Datei zu kopieren? Wenn ja, wäre ein Beispiel großartig. Vielen Dank.
Gibt es eine Möglichkeit, Verzeichnisse rekursiv in eine .bat-Datei zu kopieren? Wenn ja, wäre ein Beispiel großartig. Vielen Dank.
Antworten:
Schauen Sie sich xcopy an , das Dateien und Unterverzeichnisse rekursiv kopiert.
Es gibt Beispiele, 2/3 auf der Seite. Von besonderem Nutzen ist:
Geben Sie Folgendes ein, um alle Dateien und Unterverzeichnisse (einschließlich aller leeren Unterverzeichnisse) von Laufwerk A auf Laufwerk B zu kopieren:
xcopy a: b: /s /e
Copy-Item -Recurse
in PowerShell tun .
Nachdem ich die Kommentare der akzeptierten Antwort gelesen hatte, versuchte ich den Robocopy- Befehl, der für mich funktionierte (unter Verwendung der Standard-Eingabeaufforderung von Windows 7 64-Bit-SP 1):
robocopy source_dir dest_dir /s /e
/E
bedeuten /S
? copy subdirectories, including Empty ones.
/S
und /E
scheinen entgegengesetzte Dinge zu implizieren, laut der Robocopy- /?
Hilfe - s ist "nicht leer" e ist "leer". Ich denke, Sie sollten nur eine auswählen.
robocopy
der Exit-Code 1 zurückgegeben wird, wenn eine oder mehrere Dateien erfolgreich kopiert wurden.
Sie können einen rekursiven Algorithmus in Batch schreiben, mit dem Sie genau steuern können, was Sie in jedem verschachtelten Unterverzeichnis tun:
@echo off
call :treeProcess
goto :eof
:treeProcess
rem Do whatever you want here over the files of this subdir, for example:
copy *.* C:\dest\dir
for /D %%d in (*) do (
cd %%d
call :treeProcess
cd ..
)
exit /b
Windows-Batchdatei, die Verzeichnisse durchläuft, um Dateien zu verarbeiten?