91863
Goto Top

Frage zum Copy Job Robocopy etc Möchte Folder kopieren aber ohne Inhalt. Es sollen nur Dateien mit xml kopiert werden

Hallo Zusammen,

wir haben ein Sicherungssystem , das alle Kunden auf ein NAS System ablegt. Nun wird jeder Kunde als Profile.xml abgespeichert.
Darin sind Kundendaten und Backupjobs definierte. Zerreist es morgen das NAS , sind alle Backupjobs und Kunden weg. Und müssten manuell neu angelegt werden.
Nun möchte ich ein Copy machen über das NAS. Es soll die Ordnerstruktur kopieren, aber keine Dateien mitnehmen. Es soll nur Dateien mit *XML , *xml1 (System legt mehrere an *xml2 bis xml9 ) mitkopieren.
Im falle eine Crash kann die Struktur einfach auf das neue NAS gelegt werden, danach zieht es die JOBs neu an. Mit Robocopy habe ich nicht rausgefunden wie ich das machen kann. Nur ganze Strukturen , oder einzelne Files.

Gruss
Ralf

Content-Key: 217631

Url: https://administrator.de/contentid/217631

Printed on: April 18, 2024 at 07:04 o'clock

Member: colinardo
colinardo Sep 23, 2013 updated at 12:01:36 (UTC)
Goto Top
Hallo Ralf,
dazu könntest du folgendes Powershell-Script hernehmen: (Quell und Ziel-Ordner in der letzten Zeile angeben)
function CopyStructureWithXML($source,$target){
    ##get all XML files (*.xml[1-9])
    $allXMLFiles = get-childitem $source -Recurse | ?{$_.Extension -match "\.xml[1-9]*"}  
    ##get all folders recursive
    $allFolders = get-childitem $source -Recurse |?{$_.PSIsContainer}
    ##pre-create folders
    foreach ($fldr in $allFolders){
        $newFolder = $fldr.FullName.Replace("$source","$target")  
        if (!(Test-Path $newFolder)){
            md $newFolder | out-null
        }
    }
    # copy files
    foreach ($file in $allXMLFiles){
        $targetFile = $file.FullName.Replace("$source","$target")  
        $sourcefile = $file.FullName
        copy-item -Path $sourcefile -Destination $targetFile -Force
    }
}

CopyStructureWithXML "F:\quelle" "F:\ziel"  

Grüße Uwe
Mitglied: 91863
91863 Sep 23, 2013 at 14:24:00 (UTC)
Goto Top
Hallo,

ich habe das abgespeichert als *.ps1 Datei , aber wenn ich es ausführe zeiht es mir die Dateien nicht raus.

Gruss
Ralf
Member: colinardo
colinardo Sep 23, 2013 updated at 14:33:08 (UTC)
Goto Top
wenn du noch nicht mit powershell gearbeitet hast musst du erst die Scriptsicherheit hiermit in einer Powershell Konsole als Admin einstellen:
set-executionpolicy RemoteSigned
Das Script ansich läuft ansonsten bei mir einwandfrei... und macht das so wie du es geschrieben hast, die Ordnerstruktur replizieren und nur die XML-Dateien in den Ordnern mitkopieren...

Grüße Uwe
Member: Endoro
Endoro Sep 23, 2013 updated at 19:54:00 (UTC)
Goto Top
Hi,
angenommen dein NAS ist Volume Z: sollte es so gehen:
robocopy "Z:\" "D:\backup\folder" *.xml? /l /e  
Wenn die Ausgabe iO ist, durch Loeschen des Parameters /l scharf stellen.
lg.

PS: /s wieder gelöscht. thx. bastla.
Member: bastla
bastla Sep 23, 2013 updated at 19:22:00 (UTC)
Goto Top
@ Endoro
Wozu das "/s" (der Rest sähe bei mir gleich aus)?

Grüße
bastla
Member: Endoro
Endoro Sep 23, 2013 at 19:52:36 (UTC)
Goto Top
@bastla

Hi, hast du vollkommen recht, den hab ich mir von Xcopy ausgeliehen face-smile
l.g.
Member: bastla
bastla Sep 23, 2013 at 20:19:24 (UTC)
Goto Top
@ Endoro
den hab ich mir von Xcopy ausgeliehen face-smile
... wo er auch schon nicht nötig war ... face-wink

Grüße
bastla
Mitglied: 91863
91863 Sep 24, 2013 at 07:44:24 (UTC)
Goto Top
Hallo,

mit dem /e kommt das Subdirectory inclusive Inhalt mit. ich brauche eben nur die Directorys.

Gruss
Ralf
Member: colinardo
colinardo Sep 24, 2013 updated at 07:54:40 (UTC)
Goto Top
Zitat von @91863:
Hallo,
mit dem /e kommt das Subdirectory inclusive Inhalt mit. ich brauche eben nur die Directorys.
Dann machst du grundlegend etwas falsch, wenn alles was wir dir hier anbieten bei Dir nicht funktioniert und bei uns schon ...
Poste doch bitte deine verwendete Zeile. Wahrscheinlich hast du das *.xml? vergessen.

Grüße Uwe
Mitglied: 91863
91863 Sep 24, 2013 at 08:12:17 (UTC)
Goto Top
Hoi Uwa,

beim Robocopy hatte ich noch das /l als Probe drinnen ! Also kommt es ohne Inhalt so ?

Gruss
Ralf
Member: colinardo
colinardo Sep 24, 2013 updated at 08:20:38 (UTC)
Goto Top
Zitat von @91863:
beim Robocopy hatte ich noch das /l als Probe drinnen ! Also kommt es ohne Inhalt so ?
@Endoro hat's doch schon richtig gepostet, ich weiß nicht wo dein Problem liegt ? Dies kopiert alle Ordner (auch leere) ohne Inhalt bzw. nur die (*.xml[1-9]) Dateien.
robocopy "Z:\" "D:\backup\folder" *.xml? /e  
G. Uwe
Mitglied: 91863
91863 Sep 24, 2013 at 08:20:13 (UTC)
Goto Top
Ok Sorry. Ich teste es eben. Hatte bei Robocopy in der Befehlsreferenz gelesen , und das falsch interpretiert.

Gruss
Ralf
Mitglied: 91863
91863 Sep 24, 2013 at 10:09:53 (UTC)
Goto Top
Danke zusammen.

Es geht mit Robocopy einwandfrei.

Gruss
Ralf