![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Senior Member
![]() Registriert seit: 15.12.2003
Beiträge: 150
|
![]() Hallo!
Ich suche eine Möglichkeit, Dateien (und Unterverzeichnisse) mit einem Windows-Script zu verschieben. Die endgültige Funktion soll genauso sein wie bei mv unter linux Bin derzeit am Probieren mit Robocopy, leider funktioniert das aber nicht ganz... robocopy /MOVE C:\test D:\test *.* Resultat + Dateien werden verschoben ABER - C:\test wird gelöscht - Dateien in D:\test werden überschrieben falls vorhanden - es werden nur Dateien aus C:\test verschoben, nicht aber z.B. aus C:\test\test\... - Ordner werden nicht verschoben Kann mir jemand weiterhelfen? |
![]() |
![]() |
![]() |
#2 |
Hero
![]() Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811
|
![]() ??
hilfreich wären die gewünschten funktionen von mv unter linux genau zu beschreiben. es gibt unter windows den befehl "move"! - warum verwendest du ihn nicht? p.s.: bei einem verschieben ist das quellverzeichnis natürlich nachher nicht mehr vorhanden, also "gelöscht" ![]()
____________________________________
nobody is perfect |
![]() |
![]() |
![]() |
#3 |
Senior Member
![]() Registriert seit: 15.12.2003
Beiträge: 150
|
![]() mv (linux)
verschiebt Dateien und (Unter)verzeichnisse move (win) verschiebt nur Dateien -- Ziele es soll der Inhalt des Quellverzeichnisses (mit Unterverzeichnissen) verschoben werden und nicht das Quellverzeichnis mit Inhalt |
![]() |
![]() |
![]() |
#4 | |||
Hero
![]() Registriert seit: 26.07.2001
Ort: Wien
Beiträge: 811
|
![]() Zitat:
also mir fällt es schwer, den unterschied zwischen mv und move zu erkennen... mv verschiebt genauso das ganze quellverzeichnis. lediglich mv verzeichnis/* und move verzeichnis\* verhalten sich anders. btw: ist das ein großes problem, den "inhalt" und nicht gleich das ganze "verzeichnis" zu verschieben? eine lösung wäre zuerst kopieren, dann alte dateien löschen - ist aber wahrscheinlich keine zufriedenstellende lösung Zitat:
![]() Zitat:
wäre noch auszuprobieren ob jetzt dateien in unterverzeichnissen korrekt verschoben werden... das mit dem überschreiben wird sich mit robocopy nicht lösen lassen ![]() um welche art von script handelt es sich eigentlich? powershell eine option?
____________________________________
nobody is perfect |
|||
![]() |
![]() |
![]() |
#5 | |
Senior Member
![]() |
![]() Zitat:
es ist ein script. ob da nun 1 zeile drinnen steht oder 2 xcopy ... rd /S /Q ....
____________________________________
101010 |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
![]() Registriert seit: 15.12.2003
Beiträge: 150
|
![]() mit xcopy und anschließendem rmdir bzw. del habe ich es auch schon probiert
klar, man kann das quellverzeichnis auch jedes Mal wieder neu anlegen... ![]() Fall 1) alle Dateien wurden kopiert, weil in Zielverzeichnis noch nicht vorhanden -> PERFEKT Fall 2) es wurden nicht alle Dateien kopiert, weil z.B. 1 Datei nicht überschrieben wurde od. kein Speicherplatz auf Ziellaufwerk -> PROBLEM weil restliche Quelldateien trotzdem gelöscht werden |
![]() |
![]() |
![]() |
#7 |
Senior Member
![]() |
![]() eine idee:
du kannst ja das ergebnis von xcopy umleiten in ein file >> dann dieses mit findstr auswerten. wenn ok lösche alles ansonsten nicht. es gibt ja auch noch errorlevels! xcopy c:\Quellverzeichnis\zukopierendeDatei.datei c:\Zielverzeichnis /C /D /E /H /R /Y /F 1>>%LOG_FILE_NAME% 2>>&1 echo. if errorlevel 4 echo 4 ---richtig doller Fehler... zu wenig Hauptspeicher zum Kopieren if errorlevel 3 echo 3 if errorlevel 2 echo 2 ---Problem vor dem Bildschirm...Syntaxfehler if errorlevel 1 echo 1 && goto irgendeinFehler if errorlevel 0 echo 0 alles Prima goto Normalweiter :irgendeinFehler @Echo Xcopy ging in die Grütze...ich hör auf goto :eof :NormalWeiter @echo ...habs geschafft, soll ich noch mal? pause
____________________________________
101010 |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|