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, 632 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
Batch & Shell
Robocopy Ordner Synchronisieren
Frage von blackhawk17Batch & Shell10 Kommentare

Guten Tag. ich möchte gerne die Inhalte zweiter Laufwerke zusammenführen. Laufwerk A \ Ordner A Laufwerk B \ Ordner ...

Windows Server
Robocopy Verzeichnis Synchronisieren
gelöst Frage von Fenris14Windows Server1 Kommentar

Guten Tag, ich bin gerade dabei eine Batch mit Robocopy zu schreiben. Soll dann später jeden Tag um 2Uhr ...

Windows Tools

Verzeichnisse synchronisieren unter bestimmten Umständen

Frage von jojo0411Windows Tools3 Kommentare

Hallo Leute, Ich habe eine Anforderung die man wahrscheinlich mit Robocopy lösen könnte wobei ich jedoch ein Programm (kann ...

Windows Server

Robocopy Ordner-Icons behalten

Frage von sebastian2608Windows Server5 Kommentare

Hallo Leute, heute habe ich mal eine etwas seltsame Frage Ich habe mir ein kleines Script geschrieben, welches mit ...

Neue Wissensbeiträge
Windows 10

Blackscreen nach dem Update von 1809 auf 1809 wenn der Rechner aus dem Standby gestartet wird

Tipp von FSX2010 vor 1 TagWindows 108 Kommentare

Habt ihr den Samsung Treiber "Samsung_NVM_Express_Driver_3.0" installiert sollte dieser für 1809 deinstalliert werden da dieser nicht kompatibel ist. Der ...

Utilities
Teamviewer 14 Verbindungsprobleme mit Proxy
Tipp von PeterleB vor 2 TagenUtilities

Nach dem Umstieg von Version 13 auf 14 wollte sich TV nicht mehr mit dem Netz verbinden, ignorierte offenbar ...

Administrator.de Feedback
Unsere Datenbank wurde umgestellt
Information von Frank vor 2 TagenAdministrator.de Feedback5 Kommentare

Hallo User, ich habe in der Nacht unsere Datenbank umgestellt. D.h. neue Version (MySQL 8) und andere Örtlichkeit. Sollte ...

Sonstige Systeme
Es war einmal ein BeOS - Wer erinnert sich noch?
Information von BassFishFox vor 5 TagenSonstige Systeme8 Kommentare

Hallo, Bin gerade ueber Haiku gestolpert, von dessen Existenz als "Nachfolger des BeOS" ich wusste nur mich nie wirklich ...

Heiß diskutierte Inhalte
Samba
Linux Server und Windows Linux Client
gelöst Frage von 137898Samba12 Kommentare

Hallo, ich bräuchte dringend bei der Aufgabe etwas Hilfe. Die Firma XYZ besteht auf zwei Abteilungen Logistik und Technik ...

Windows Server
Replizierung Netlogon funktioniert nicht
Frage von miichiii9Windows Server12 Kommentare

Guten Abend Ich habe einen Domain Controller hier die Daten: SRV-DC03 Windows Server 2012 Std. Nun habe ich einen ...

Webbrowser
Proxy-Zugangsdaten in Firefox hinterlegen
Frage von SebastianGSWebbrowser12 Kommentare

Hallo zusammen, kennt jemand von Euch aktuell eine Möglichkeit die Proxy-Zugangsdaten im Firefox (Vers. 63.0.3 - 64-Bit) zu hinterlegen, ...

Monitoring
WMI Problem bei PRTG
Frage von justInsaneMonitoring12 Kommentare

Hallo zusammen, ich bin zur Zeit dabei, das PRTG Monitoring Tool auszutesten. Ich habe das ganze nun grob konfiguriert ...