WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Verzeichnis per Batch verschieben (http://www.wcm.at/forum/showthread.php?t=179117)

revell 24.11.2005 17:36

Verzeichnis per Batch verschieben
 
Hallo Alle,

Irgendwie gelingt es mir gerade nicht ein Verzeichnis inkl. Unterverzeichnisse und Dateien per Batch von A nach B zu verschieben. Hab's mit xcopy versucht aber es ist gescheitert...

Danke schon mal für Eure Hilfe!
lg, revell

pong 24.11.2005 17:56

Code:

XCOPY Quelle [Ziel] [/A | /M] [/D[:Datum]] [/P] [/S [/E]] [/V] [/W]
                    [/C] [/i] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/u]
                    [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
                    [/EXCLUDE:Datei1[+Datei2][+Datei3]...]

  Quelle    Die zu kopierenden Dateien.
  Ziel      Position und/oder Name der neuen Dateien.
  /A        Kopiert nur Dateien mit gesetztem Archivattribut,
            ändert das Attribut nicht.
  /M        Kopiert nur Dateien mit gesetztem Archivattribut,
            setzt das Attribut nach dem Kopieren zurück.
  /D:M-T-J  Kopiert nur die an oder nach dem Datum geänderten Dateien.
            Ist kein Datum angegeben, werden nur Dateien kopiert,
            die neuer als die bestehenden Zieldateien sind.
  /EXCLUDE:Datei1[+Datei2][+Datei3]...
            Gibt eine Liste von Zeichenfolgen an. Jede Zeichenfolge
            sollte in einer einzelnen Zeile in der Datei angezeigt werden.
            Wenn eine der Zeichenfolgen Teil des absoluten Verzeichnispfads
            der zu kopierenden Datei ist, wird diese Datei vom
            Kopiervorgang ausgeschlossen. Beispiel: Bei der
            Zeichenfolge \obj\ oder .obj werden alle Dateien
            unterhalb des Verzeichnisses OBJ bzw. alle Dateien mit
            der Erweiterung .obj vom Kopiervorgang ausgeschlossen.
  /P        Fordert vor dem Erstellen jeder Zieldatei eine Bestätigung.
  /S        Kopiert Verzeichnisse und Unterverzeichnisse, die nicht leer sind.
  /E        Kopiert alle Unterverzeichnisse (leer oder nicht leer).
            Wie /S /E. Mit dieser Option kann die Option /T geändert werden.
  /V        Überprüft jede neue Datei auf Korrektheit.
  /W        Fordert vor dem Beginn des Kopierens zu einem Tastendruck auf.
  /C        Setzt das Kopieren fort, auch wenn Fehler auftreten.
  /I        Falls Ziel nicht vorhanden ist und mehrere Dateien kopiert
            werden, nimmt XCOPY an, dass das Ziel ein Verzeichnis ist.
  /Q        Zeigt beim Kopieren keine Dateinamen an.
  /F        Zeigt die Namen der Quell- und Zieldateien beim Kopieren an.
  /L        Listet die Dateien auf, die ggf. kopiert werden.
  /G        Ermöglicht das Kopieren von verschlüsselten Dateien auf ein
            Ziel wo Verschlüsselung nicht unterstützt wird.
  /H        Kopiert auch Dateien mit den Attributen 'Versteckt' und 'System'.
  /R        Überschreibt schreibgeschützte Dateien.
  /T        Erstellt die Verzeichnisstruktur, kopiert aber keine Dateien.
            Leere oder Unterverzeichnisse werden nicht kopiert. Um auch diese
            zu kopieren, müssen Sie die Optionen /T /E angeben.
  /U        Kopiert nur Dateien, die im Zielverzeichnis vorhanden sind.
  /K        Kopiert Attribute. Standardmäßig wird 'Schreibgeschützt' gelöscht.
  /N        Beim Kopieren werden die erzeugten Kurznamen verwendet.
  /O        Kopiert Informationen über den Besitzer und ACL.
  /X        Kopiert Dateiüberwachungseinstellungen (bedingt /O).
  /Y        Unterdrückt die Aufforderung zur Bestätigung, dass eine
            vorhandene Zieldatei überschrieben werden soll.
  /-Y      Fordert zur Bestätigung auf, dass eine bestehende
            Zieldatei überschrieben werden soll.
  /Z        Kopiert Dateien in einem Modus, der einen Neustart ermöglicht.

Die Option /Y kann in der Umgebungsvariable COPYCMD vordefiniert sein.
Sie kann mit /-Y in der Befehlszeile deaktiviert werden.

pong

revell 24.11.2005 20:10

Ja schon, aber wen ich
"xcopy 'Quelle' 'Ziel'"
eingebe, dann bleibt das Ganze in einem Loop hängen, ohne irgend etwas zu kopieren...
Ich hab irgendwie das Gefühlxcopy funktioniert nicht so richtig bei mir. Gibt's das?

Schaly 24.11.2005 20:54

Hi!

Verwende doch robocopy (ist im Win2003 Ressource Kit enthalten)!

Beispiel:

robocopy C:\Folder1 D:\Folder1 /mov

LouCypher 24.11.2005 21:24

probier halt:
xcopy quelle ziel /s /e /c /h
ohne switches geht nichts.

revell 24.11.2005 22:33

@LouCypher: Also das funktioniert auch nicht. :confused:
@Schaly: Danke. Wenn sonst nix hilft werd ichs mir sicher mal anschauen... ;)

Don Manuel 25.11.2005 08:45

Zitat:

Original geschrieben von revell
@LouCypher: Also das funktioniert auch nicht. :confused:
@Schaly: Danke. Wenn sonst nix hilft werd ichs mir sicher mal anschauen... ;)

Dann hast Du höchstwahrscheinlich Quelle und Ziel nicht richtig angegeben.
Was bei robocopy ebenso wichtig ist.
Wie hast Du den Befehl genau geschrieben?

LouCypher 25.11.2005 12:27

was heisst funktioniert nicht? Tut er gar nichts; kopiert er nicht alles? Passen die berechtigungen? Hab x batches mit xcopy laufen die alles mögliche tun funzt immer und überall problemlos.

revell 25.11.2005 14:44

Hab mehreres ausprobiert. zB:
Code:

XCOPY C:\Beispiel\test\backup C:\Beispiel\test\ziel /s /e /c /h
Habs aber auch mit anderen Optionen ausprobiert sowie die Pfade geändert (mit/ohne Anführungszeichen etc.).
Das Resultat ist immer das Gleiche. Der Code läuft in der Shell in einem ewigen Loop den Bildschirm hinunter. Kopiert bzw. verschoben wird nix...

Mein Quellordner ist: "C:\Beispiel\test\backup"
In ihm sind mehrere Dateien und Unterordner.
Mein Zielordner ist: "C:\Beispiel\test\ziel"
Dorthin sollen die Dateien/Ordner verschoben werden.

:confused:

Don Manuel 25.11.2005 18:34

Dir ist schon klar:
Mit xcopy kannst nur Verzeichnisbäume kopieren.
Die Quelle müßtest Du dann noch eigens löschen, um verschoben zu haben.
Robocopy mit mov müßte aber wirklich verschieben,
ich nutze es nur zum Synchronisieren.
Was passiert, wenn Du an Quelle und Ziel jeweils noch \*.* anhängst?


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag