Batch ordner kopieren, verschieben, umbenennen

svenjatzu

Newbie
Registriert
Dez. 2017
Beiträge
4
Hi coder,

ich bin neu im bereich batch unterwegs und möchte zur übung mal mit ein paar kleinen scripten rumspielen um ein gefühl dafür zu bekommen. ich betreibe einen kleinen homeserver wo meine webseiten gehostet sind und da will ich am ende gerne backups umzüge etz über batch machen.

anfangen würde ich gerne mit:
- odner von a nach b kopieren
- ordner von a nach b verschieben
- ordner von a nach b verschieben und umbennen.

wer ist so lieb und gibt mir ein paar codeschnipsel oder fertige codes mit einer kurzen erklärung dazu?
Ergänzung ()

ah vielen dank
https://support.microsoft.com/de-de...ve-overwrite-functionality-changes-in-windows
Ergänzung ()

alles klar das war easy, jetzt aber frage ich mich wie ich die bat so anpassen kann dass wenn ich aus einem ordner ohne pfadangabe den gesamten ordnerinhalt in dem die bat liegt in ein vordefiniertes verzeichnis kopieren kann. wer hat eine idee?
Ergänzung ()

vielen dank an alle die ihre unterstützung gegeben haben,
das war jetzt echt nicht so schwierig.

hier die lösungen für neulinge die ähnliche probleme haben

um die jeweiligen ordner in dem die bat liegt von a nach b zu verschieben

move %CD%\ordner "%APPDATA%\%Roaming%\ordner"


um das ganze dann bei jedem serverneustart zu automatisieren bin ich auf diesen code gekommen um den autostart zu setzen

@echo off
reg add HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run /v test /t reg_sz /d %CD%\run.vbs

damit nicht dauernd die eingabeaufforderung im bild hängt habe ich diese vbs erstellt um die bat im hintergrund zu starten

Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & %CD%\run.bat & Chr(34), 0
Set WshShell = Nothing


die run.bat selbst habe ich so gestaltet

echo@off
:hide
cd %CD%\run.bat

start run.bat

exit



na geil das war ja schonmal die erste lektion dann geht es jetzt weilter mit nr 2 :D

ich hoffe auch weiterhin auf eure hilfe, die nächsten fragen werden nähmlich advanced :D:freak:
 
Code:
xcopy *.* c:\ordner1\ordner2\ /Y /V /C /H

Erstellt auch gleich gewünschte(n) Zielordner und kopiert dorthin alle Dateien aus dem aktuellen Ordner (ohne Unterordner)

Code:
xcopy c:\test\*.* c:\ordner1\ordner2\ /S /E /Y /V /C /H

Kopiert alle Dateien aus dem Ordner c:\test (inkl. Unterordner) in automatisch erstellte(n) Zielordner

Code:
xcopy /?
für Hilfe und mehr Optionen

p.s.
Verschieben ist immer mit der Gefahr verbunden dass falls der Kopiervorgang nicht richtig funktioniert hat Dateien fehlen könnten oder in 2 Ordner aufgeteilt stehen würden.
 
Zuletzt bearbeitet:
super vielen dank :)

und wie kann ich das verhindern oder gibt es eine alternative zum verschieben? mh logisch, kopieren :D
 
Kopieren und danach (eventuell manuell) löschen?

Oder xcopy so ausführen dass bei Fehler abgebrochen werden würde.
Bringt eventuell was bei geöffneten/gesperrten Dateien.
Kommt aber immer auf den Anwendungsfall an.

In letzter Zeile in der BAT kann man den Befehl PAUSE einfügen dann wird das CMD Fenster nicht geschlossen.

Eventuell kann man auch noch mittels ERRORLEVEL abfragen ob alles korrekt funktioniert hat.
Müsste ich aber selber nachsehen ob das bei XCOPY auch funktioniert.
 
Zuletzt bearbeitet:
Hallo,

ich verwende dafür robycopy, man muss nur wie immer wissen was man tut.

Bsp. einfach alles kopieren
Code:
robocopy D: Z: /E /R:5 /W:5 /XD "found.000"  "System Volume Information" "$RECYCLE.BIN" /NDL /NP /TEE /LOG:C:\Users\name\Logdatei.log

bedeutet, kopiere alles von D: nach Z:, mache bei Problemen 5 Wiederholungen und warte dazwischen 5s, kopiere dabei nicht die Datei found.000 und die Verzeichnisse "System Volume Information" "$RECYCLE.BIN" falls vorhanden, gib alle Details in der Konsole aus und erstelle davon noch ein Logfile.

Ist fast das Pendant zu rsync auf Linux. robocopy kann nur leider beim kopieren keine echten Prüfsummen erstellen um nochmals zuvergleichen. Aber da sollte man NTFS vertrauen, macht man ja sonst auch.
 
BaserDevil schrieb:
Ist fast das Pendant zu rsync auf Linux. robocopy kann nur leider beim kopieren keine echten Prüfsummen erstellen um nochmals zuvergleichen. Aber da sollte man NTFS vertrauen, macht man ja sonst auch.
Wenn du Robocopy als Fast-Pendant zu rsync siehst, dann hast du die Möglichkeiten von rsync nicht verstanden ;-)
 
Zurück
Oben