Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Robocopy soll bestimmte Ordner synchronisieren

Mitglied: Zunaras

Zunaras (Level 1) - Jetzt verbinden

13.09.2018 um 14:50 Uhr, 1019 Aufrufe, 29 Kommentare

Hallo,

Robocopy soll bestimmte Ordner auf einer NAS, beginnend mit "Backup", mit dem Ziel synchronisieren.
Bisher habe ich das immer für jeden Ordner einzeln gelöst. Aber es kommen immer wieder Backup-Ordner hinzu oder werden entfernt, sodass man die BAT ständig editieren muss.
Lässt sich das vereinfachen?

Hier der bisherige Code
01.
robocopy.exe "\\nas\Backup1"   "D:\Kopie\Backup1"   /MIR  /TEE  /R:0 /W:0 /XD "@Recycle"  /ETA /NP /MT:1
Quelle
\\nas\Backup1
\\nas\backup2
usw

Ziel
d:\Kopie\Backup1
d:\Kopie\backup2
usw.

Mit diesem Code als Vorlage habe ich experimentiert
Hier kommt der Fehler "Der Netzwerkordner wurde nicht gefunden"
01.
for /f "tokens=*" %%a in ('dir \\nas\Backup*./ad /b') do robocopy %%a "D:\Kopie\%%a" /MIR  usw.....
oder
01.
for /f "tokens=*" %%a in ('dir \\nas\Backup*./ad /b') do robocopy \\nas\%%a "D:\Kopie\%%a" /MIR  usw.....
Viele Grüße
29 Antworten
Mitglied: 137084
13.09.2018, aktualisiert um 16:17 Uhr
01.
@echo off
02.
for /d %%a in ("\\nas\Freigabe\Backup*") do robocopy "%%~a" "D:\Kopie\%%~nxa" /MIR /R:0 /W:0 /XD "@Recycle" /ETA /NP /MT:1
Bitte warten ..
Mitglied: Zunaras
13.09.2018 um 15:52 Uhr
Hi!

wenn ich das ausführe, passiert gar nichts. Nicht mal ein Hinweis.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:04 Uhr
Geht hier einwandfrei! Der Code gehört in eine Batch, zum ausprobieren auf der Konsole musst du die doppelten Prozentzeichen durch einzelne ersetzen!

Hier lesen
https://www.administrator.de/wissen/tutorial-for-schleife-155681.html
Bitte warten ..
Mitglied: Zunaras
13.09.2018 um 16:06 Uhr
Hab ich so gemacht.
Wenn ich den Code als Batch ausführe, fällt auf, das am Anfang
for / %a in ("\\nas\Backup*") ........
steht

Sollte da nicht
for /d %a in ("\\nas\Backup*") ........
stehen?
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:10 Uhr
Zitat von Zunaras:

Hab ich so gemacht.
Wenn ich den Code als Batch ausführe, fällt auf, das am Anfang
for / %a in ("\\nas\Backup*") ........
steht

Sollte da nicht
for /d %a in ("\\nas\Backup*") ........
stehen?
Du hast das Encoding deiner Batch versaut, außerdem fehlen dir die doppelten Prozentzeichen wenn es in einer Batch steht, habe ich doch oben geschrieben, nur wenn es direkt in eine Konsole reingetippelt wird sind es einfache Prozentzeichen!
Wie gesagt Code funktioniert einwandfrei, es liegt auf deiner Seite sorry.
Bitte warten ..
Mitglied: emeriks
13.09.2018, aktualisiert um 16:16 Uhr
Hi,
das funktioniert bei mir auch nicht. Und es wäre mir auch neu, dass man Wildcards beim Benennen von Freigaben verwenden könnte.
Beachte:
\\nas\BackupX
ist eine Freigabe, kein Verzeichnis.

E.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:18 Uhr
Naja das er das durch seine Freigabe und anschließenden Pfad ersetzt setze ich mal voraus, das waren ja nur Platzhalter.

Damit 's nicht confused habe ich das ganze mal durch
"\\nas\Freigabe\Backup*"
ersetzt.
Bitte warten ..
Mitglied: emeriks
13.09.2018 um 16:18 Uhr
Naja das er das durch seine Freigabe und anschließenden Pfad ersetzt setze ich mal voraus, das waren ja nur Platzhalter.
Du hast nicht verstanden.
Man kann - meines Wissens - bei Freigabenamen keine Wildcards benutzen.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:21 Uhr
Zitat von emeriks:

Naja das er das durch seine Freigabe und anschließenden Pfad ersetzt setze ich mal voraus, das waren ja nur Platzhalter.
Du hast nicht verstanden.
Man kann - meines Wissens - bei Freigabenamen keine Wildcards benutzen.
Das ist klar, aber er sagt doch das das Unterordner sind und keine einzelnen Freigaben.

Er muss also die Freigabe nehmen in der alle seine Backupordner liegen
Bitte warten ..
Mitglied: Zunaras
13.09.2018, aktualisiert um 16:21 Uhr
Moment!
Bitte warten ..
Mitglied: emeriks
13.09.2018 um 16:19 Uhr
Wo sagt er das? Seine Aufgabenstellung ist
\\nas\Backup*
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:21 Uhr
Dann hat er sich eben nicht eindeutig ausgedrückt. Nach seiner Laute sind es Ordner keine Freigaben und dafür ist der Code auch gedacht.

Warten wir's ab was er sagt.
Bitte warten ..
Mitglied: emeriks
13.09.2018 um 16:21 Uhr
Zitat von 137084:
Das ist klar, aber er sagt doch das das Unterordner sind und keine einzelnen Freigaben.

Er muss also die Freigabe nehmen in der alle Backupordner liegen
Wenn Du Deine Kommentare nun schon komplett änderst, dann kennzeichne das bitte auch so. Sonst weiß später niemand mehr, wer warum worauf geantwortet hat.
Bitte warten ..
Mitglied: 137084
13.09.2018 um 16:22 Uhr
Wir waren nur zu schnell, das ist alles.
Bitte warten ..
Mitglied: emeriks
13.09.2018 um 16:23 Uhr
Zitat von 137084:
Wir waren nur zu schnell, das ist alles.
Wir?
Bitte warten ..
Mitglied: Zunaras
13.09.2018 um 16:24 Uhr
Darf ich wieder?

Ich hab mich bestimmt falsch ausgedrückt. Sorry!!!

Es ist ein auf der NAS eingerichteter Freigabeordner.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:26 Uhr
D.h. jeder Backupordner ist eine eigene Freigabe oder wie jetze??
Oder sind die Backupordner einzelne Ordner innerhalb einer Freigabe?
Bitte warten ..
Mitglied: emeriks
13.09.2018 um 16:26 Uhr
Zitat von 137084:

D.h. jeder Backupordner ist eine eigene Freigabe oder wie jetze??
Ja. Schreibt er doch schon im Eigangstext!
Bitte warten ..
Mitglied: emeriks
13.09.2018, aktualisiert um 16:29 Uhr
Wenn die Freigaben tatsächlich "Backup1", "Backup2", "Backup3" usw. lauten, dann könntest Du das ganz einfach hochzählen.

01.
for %n in (1 2 3 4 5 6 7 8 9) do robocopy.exe "\\nas\Backup%n" "D:\Kopie\Backup%n" /MIR /TEE /R:0 /W:0 /XD "@Recycle" /ETA /NP /MT:1
Bitte warten ..
Mitglied: Zunaras
13.09.2018 um 16:28 Uhr
Jeder dieser Ordner ist eine eigene Freigabe.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 16:44 Uhr
Zitat von Zunaras:

Jeder dieser Ordner ist eine eigene Freigabe.
OK in dem Fall kannst du folgendes machen
01.
for /f "tokens=1" %%a in ('net view \\NAS ^| findstr /i "^Backup.*"') do robocopy "\\NAS\%%a" "D:\Kopie\%%a" /MIR /TEE /R:0 /W:0 /XD "@Recycle" /ETA /NP /MT:1
Bitte warten ..
Mitglied: Zunaras
13.09.2018 um 17:54 Uhr
Vielen Dank euch beiden!

Die Lösung von ElMano gefällt mir ganz gut, da ich hier auch ohne die Zahlen arbeiten kann.

Ich hätte dafür auch schon ein weiteres Einsatzgebiet. Allerdings haben diese Ordner Leerzeichen im Namen. Der Pfad wird nach dem ersten Wort abgeschnitten.
Bitte warten ..
Mitglied: 137084
13.09.2018, aktualisiert um 18:14 Uhr
Zitat von Zunaras:
Ich hätte dafür auch schon ein weiteres Einsatzgebiet. Allerdings haben diese Ordner Leerzeichen im Namen. Der Pfad wird nach dem ersten Wort abgeschnitten.
Das wäre kein Hindernis, lässt sich auch an solche Bedürfnisse anpassen.
Bitte warten ..
Mitglied: Zunaras
14.09.2018 um 09:10 Uhr
Zitat von 137084:
Das wäre kein Hindernis, lässt sich auch an solche Bedürfnisse anpassen.

Ich experimentier ja gerne und suche selbst nach Lösungen aber nun zieh ich mir seit Stunden das "Tutorial zur FOR-Schleife" rein und hab nach Beispielen ähnlich meinem Fall gesucht. Stichwort: delims, findstr, tokens oder auch usebackq
Aber was ich auch mache, der Pfad mit Leerzeichen wird nicht übernommen. Wenn doch, dann steht da noch viel, viel mehr als Ergebnis und/oder es kommt ein Fehler.
Dürfte ich ich vielleicht noch mal um Deine Hilfe bitten?
Bitte warten ..
Mitglied: emeriks
14.09.2018 um 09:22 Uhr
Was hindert Dich daran, diese Ordner - extra für den Backup - mit einer zweiten Freigabe freizugeben, z.B. versteckte Freigaben mit "$" am Ende und "Backup" am Anfang und ohne Leerzeichen im Namen?
Bitte warten ..
Mitglied: 137084
14.09.2018, aktualisiert um 09:30 Uhr
01.
for /f "delims=" %%a in ('powershell -Executionpolicy ByPass -NoProfile -Command "net view \\NAS | ?{$_ -match '\b(Platte|Disk)\b'} | %%{($_ -split '\s{2,}')[0]}"') do echo Tu was mit der Freigabe: '%%a'
Bitte warten ..
Mitglied: Zunaras
14.09.2018 um 11:32 Uhr
Zitat von emeriks:

Was hindert Dich daran, diese Ordner - extra für den Backup - mit einer zweiten Freigabe freizugeben, z.B. versteckte Freigaben mit "$" am Ende und "Backup" am Anfang und ohne Leerzeichen im Namen?

Ein guter Tipp. Danke!



Zitat von 137084:

01.
> for /f "delims=" %%a in ('powershell -Executionpolicy ByPass -NoProfile -Command "net view \\NAS | ?{$_ -match '\b(Platte|Disk)\b'} | %%{($_ -split '\s{2,}')[0]}"') do echo Tu was mit der Freigabe: '%%a' 

Vielen Dank! Ich werde noch ein wenig tüfteln müssen, um bestimmte Ordner an Robocopy weiterzugeben.
Bitte warten ..
Mitglied: 137084
LÖSUNG 14.09.2018, aktualisiert um 11:47 Uhr
Zitat von Zunaras:
Vielen Dank! Ich werde noch ein wenig tüfteln müssen, um bestimmte Ordner an Robocopy weiterzugeben.
Einfach per Where-Object im Powershell-Abschnitt ausfiltern oder per nachgeschaltetem findstr
Per where-Object
01.
for /f "delims=" %%a in ('powershell -Executionpolicy ByPass -NoProfile -Command "net view \\NAS | ?{$_ -match '\b(Platte|Disk)\b'} | %%{($_ -split '\s{2,}')[0]} | ?{$_ -like '*Dich such ich*'}"') do echo Tu was mit der Freigabe: '%%a'
per Findstr
01.
for /f "delims=" %%a in ('powershell -Executionpolicy ByPass -NoProfile -Command "net view \\NAS | ?{$_ -match '\b(Platte|Disk)\b'} | %%{($_ -split '\s{2,}')[0]}" ^| findstr /ic:"Such ich"') do echo Tu was mit der Freigabe: '%%a'
Oder besser gleich komplett auf die Powershell umsteigen um diesen Mischmasch zu umgehen.

Wenns das dann war bitte noch den Haken dran.


-Achtung nachträgliche Fehlerkorrekturen-
Bitte warten ..
Mitglied: Zunaras
14.09.2018 um 12:02 Uhr
Zitat von 137084:
Wenns das dann war bitte noch den Haken dran.

Vielen lieben Dank !!
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Word bestimmt Sprache selbst
gelöst Frage von honeybeeMicrosoft Office1 Kommentar

Hallo, habe in Word 2016 ein nerviges Problem: Auf meinem Computer (Windows 10) sind zwei Sprachen installiert: Deutsch und ...

Mac OS X
Safari öffnet bestimmt Seite nicht
Frage von tomi93Mac OS X2 Kommentare

Hallo , ich habe an einem iMac bei uns im Unternehmen das Problem das Safari dort eine bestimmte Seite ...

Batch & Shell
Robocopy Version
gelöst Frage von schmitBatch & Shell4 Kommentare

Hallo Zusammen, folgendes Problem: Ich kann die Option /MT :n nicht nutzen, da beim Ausführen von "robocopy" in Powershell scheinbar ...

Batch & Shell
Robocopy Logfile
gelöst Frage von michi-ffmBatch & Shell7 Kommentare

Hallo zusammen, evtl kann jemand helfen ^^ Habe hier ein Teile aus dem Code: Das skript synchronisiert 2 Ordner ...

Neue Wissensbeiträge
Windows 10

Theoretisches dauerhaftes Abschalten von Windows-Updates (Windows 10)

Tipp von beidermachtvongreyscull vor 2 StundenWindows 10

Moin Kollegen, ich weiß, ich weiß, nur ein Wahnsinniger sperrt Windows-Updates, aber dennoch gibt es Gründe, Windows 10 auf ...

Mac OS X
Wie konvertiere ich Excel-Dateien In vCard Mac?
Tipp von Maisie vor 3 StundenMac OS X

Sie können Excel-Dateien auf zwei Arten in vCard konvertieren. Eine ist eine manuelle Methode und eine andere ist ein ...

Windows Installation

Windows Install ISO mit übergroßer Install.wim auf FAT32 übertragen

Tipp von Lochkartenstanzer vor 5 TagenWindows Installation11 Kommentare

Moin Kollegen, Viele von euch werden sicher aus praktischen Gründen nicht nur DVDs oder "virtuelle" CD-Laufwerke (Zalman, IODD) zum ...

Datenschutz

Gehe zurück auf Los, ziehe keine 4.000 Mark. E-Privacy (erstmal) gescheitert

Information von certifiedit.net vor 6 TagenDatenschutz

Heiß diskutierte Inhalte
Router & Routing
Fritz VPN und WoL mit Mikrotik HEX RB750Gr2 möglich?
gelöst Frage von SionzrisRouter & Routing20 Kommentare

Hallo erstmal und danke fürs anklicken :) Ich habe folgendes Setup geplant und scheitere zurzeit an der Realisierung vom ...

LAN, WAN, Wireless
Ca. 120 Ubiquiti Unifi AP-AC Pro in einem Netz
Frage von aditzLAN, WAN, Wireless19 Kommentare

Hallo Ubiquiti-Spezialisten, geplant ist ein flächendeckendes WLAN für ein Altenheim mit den oben genannten APs. Ich habe mal auf ...

Windows Server
Netzwerk Planung Homeoffice
Frage von siopoqruipWindows Server18 Kommentare

Hallo, ich plane zurzeit ein kleines Netzwerk. 5-8 User jeder mit eigenem Laptop (Lenovo T590) Windows 10 Professional Homeoffice ...

LAN, WAN, Wireless
Netzwerkproblem: Datendurchsatz von Internetverbindung zu gering - wer ist schuld?
Frage von BlubbNRWLAN, WAN, Wireless15 Kommentare

Hallo Zusammen, man stelle sich folgende Situation vereinfacht vor: In einem Raum befinden sich 30 aktuelle Desktopcomputer (Windows 10, ...