Aktuelles Datum und Uhrzeit per Batch in Ordnernamen mit robocopy aktualisieren

Mitglied: Batcher01

Batcher01 (Level 1) - Jetzt verbinden

16.10.2020, aktualisiert 17.10.2020, 403 Aufrufe, 10 Kommentare

Hallo, moin, guten Tag, guten Abend, guten Mittag und natürlich auch guten Nachmittag! (Hoffe, jeder ist jetzt glücklich :D)

Ich habe ein herausforderndes Problem.

Der Skript funktioniert super, aber der Ordner, der beim Start des Scripts mit dem aktuellen Datum erstellt wird, wird während der Skript läuft nicht nochmal mit dem neuen aktuellen Datum erstellt, sondern bleibt beim alten Datum vom ersten Ordner, bedeutet der alte Ordner wird überschrieben oder nichts passiert dank (/XC /XN /XO).
Das liegt daran, dass der Skript in eine unendliche Schleife geht wegen /mon:1 /mot:1, was gut ist, aber das Datum wird NICHT aktualisiert.

Wie kann ich das so machen, dass der Ordner nicht überschrieben wird, sondern immer ein neuer Ordner mit dem aktuellen Datum erstellt wird?
Ich habe Vieles probiert, nichts hat geholfen. Ich bevorzuge "robocopy" und hoffe, dass jemand ne Idee hat fürs Problem.

Bitte um Hilfe, danke sehr!


Code:
Mitglied: rubberman
16.10.2020 um 22:26 Uhr
Sorry aber ich habe nicht verstanden in welchem Fall dein Zeitstempel aktualisiert werden soll. Hast du irgendwo eine Schleife implementiert oder ist das tatsächlich 1:1 das Script, das du verwendest?

Steffen
Bitte warten ..
Mitglied: c0d3.r3d
16.10.2020 um 22:32 Uhr
Kein Hallo,

Dein Skript läuft aktuell so ab, dass das Skript gestartet wird und einmalig bis zum Neustart des Skriptes die Variable vom Datum gesetzt wird. Es sollte logisch sein, dass wenn ein neuer Tag beginnt das Skript Neugestartet wird, oder eine Schleife implementiert wird welche überprüft, ob das gesetze Datum noch mit dem aktuellem Datum des Systems übereinstimmt.

Die saubere Lösung wäre aber z.B. mit der Aufgabenplanung das Skript jeden Tag um 0:00 Uhr neustarten zulassen.
Bitte warten ..
Mitglied: Batcher01
16.10.2020 um 23:59 Uhr
Danke für deine Antwort! Das ist der tatsächliche Code. Es ist ganz einfach, der Name des Ordners soll das aktuelle Datum + den Namen des Ordners von Source. (Name des Ordners in Destination "...%currentdate% %Folder%"). Das Problem ist, dass das Datum nicht aktualisiert wird im Ordnernamen.
Bitte warten ..
Mitglied: Batcher01
17.10.2020, aktualisiert um 00:07 Uhr
Danke für deine Antwort und natürlich hallo!

Die Lösung mit dem Neustarten des Skriptes würde ich eher nicht nehmen, weil das bedeuten würde, dass ich nur jeden Tag ein Backup erstellen könnte. Ältere Backups sollen natürlich nicht überschrieben werden, klar könnte ich den Skript auch alle 30min neu starten lassen, aber das würde ich nicht machen.

Dein erster Vorschlag gefällt mir viel besser, aber wie genau würde diese Schleife aussehen im Code? Ich wäre dir dankbar, wenn du die Änderung am Code vornimmst.

Danke sehr!
Bitte warten ..
Mitglied: rubberman
17.10.2020 um 00:10 Uhr
c0d3.r3d hat es bereits geschrieben. In Zeile 7 weist du den Wert für currentdate zu. Solange das Script nicht neu gestartet wird, ändert sich dieser Wert nicht. Für den Neustart sehe ich leider auch keine Alternative.

Steffen
Bitte warten ..
Mitglied: c0d3.r3d
17.10.2020, aktualisiert um 00:19 Uhr
Beide Varianten würden einen Neustart des Skriptes ausführen.

Einmal über die Aufgabenplanung, oder alternativ, wenn das Datum nicht mehr übereinstimmt über eine Schleife. Mir ist nicht bekannt - ich habe jedoch auch keine großen Batch-Kenntnisse - dass eine Variable nachträglich verändert werden kann.

Die Variante mit der Aufgabenplanung ist übrigens die Elegantere, welche nach 24 Stunden das Skript neustartet, als die mit der Schleife im Quellcode.
Bitte warten ..
Mitglied: rubberman
17.10.2020 um 00:18 Uhr
Solange du /mon und /mot definierst, hängt robocopy in einer internen Schleife. Du müsstest die Überwachung des Verzeichnisses schon selbst vornehmen um eine Chance zu haben das Datum zu aktualisieren.

Steffen
Bitte warten ..
Mitglied: Batcher01
17.10.2020 um 00:19 Uhr
Warten wir mal auf seine erste Lösung mit der Schleife. Wenn sie funktioniert, dann wäre das fantastisch.

LG
Bitte warten ..
Mitglied: Batcher01
17.10.2020 um 00:25 Uhr
Wenn du mit Überwachung, Umbenennung des Ordners meinst, dann bringt es nichts, habe ich auch probiert, so wird das Datum nicht aktualisiert.

Ich bin mir sicher, dass es eine Lösung gibt, die vielleicht sogar einfach ist, aber ich komme selbst nicht drauf, da ich neu in Batch bin.
Bitte warten ..
Mitglied: rubberman
17.10.2020 um 00:34 Uhr
Nein mit Überwachung meine ich die Änderungsevents die dazu führen das robocopy erneut kopiert.
Das Script steht in der robocopy Zeile, da robocopy die Überwachung selbst intern ausführt. Eine Schleife um die robocopy Zeile herum zu bauen hat keinen Effekt, da sie nie iteriert.
Schau dir mal in PowerShell so etwas wie System.IO.FileSystemWatcher an. Damit kannst du die Überwachung selbst ausführen und /mon und /mot aus der robocopy Kommandozeile werfen.

Steffen
Bitte warten ..
Heiß diskutierte Inhalte
Router & Routing
Cisco RIPv1 RIPv2
MrLabelFrageRouter & Routing26 Kommentare

Hallo Zusammen, ich muss nochmal auf eine schon behandelte Frage eingehen. Bitte jemand, der auch den Cisco Paket Tracer ...

Schulung & Training
IT Ausbildung
gelöst IntershipFrageSchulung & Training20 Kommentare

Hallo Leute, ist diese Ausbildung etwas für den IT-Einstig? Willkommen bei der GFN! Arbeitsuchende Berufstätige Kostenträger Über uns Jobs ...

LAN, WAN, Wireless
RJ45 Buchsen Verbindung
gelöst DennisAdm1nFrageLAN, WAN, Wireless17 Kommentare

Ich habe als Aufgabe bekommen die LAN-Verbindung in einem Haus zu fixen, dabei ist mir aufgefallen, dass der RJ45-Stecker ...

LAN, WAN, Wireless
Suche Access Point Wandhalterung
gelöst EZimmerFrageLAN, WAN, Wireless11 Kommentare

Einen schöne guten Tag, wir haben uns bei einer Ausschreibung beteiligt und sind nun auch der Suche nach folgendem ...

IDE & Editoren
IDE Entwicklung, schreiben
gelöst IntershipFrageIDE & Editoren9 Kommentare

Hallo Leute, zur Zeit befasse ich mich mit dem Schreiben einer eigenen IDE. Hat jemand so etwas schon mal ...

Windows 10
Windows10 Hilfsprogramme endgültig löschen
istike2FrageWindows 109 Kommentare

Hallo, wir sind gerade dabei mit Windows OOBE ein Image vorzubereiten. Wir würden gerne Xbox, HP Hilfsprogramme, Cortana usw. ...

Ähnliche Inhalte
Batch & Shell

Windows 10 Batch für Datum und Uhrzeit setzen

gelöst zeroblue2005FrageBatch & Shell18 Kommentare

Hallo Zusammen, habe hier ein Laptop von Medion,, wo die Bios fest verlötet ist. Fragt mich bitte nicht was ...

Batch & Shell

Datum, Uhrzeit, Feste Variable in txt mittels einer Batch Datei speichern

gelöst omroettgerFrageBatch & Shell2 Kommentare

Hallo, Ich würde gerne beide Ausgaben in einer txt Datei speichern. Führe ich jeden Befehl einzeln aus, bekomme ich ...

Windows Server

Datum und Uhrzeit in Batch als Variable setzten und während der Ausführung immer aktualisieren

MarciMarc85FrageWindows Server4 Kommentare

Hallo, ich bastel gerade an einer Batch-Datei die mehrere Scripte ausführen soll, die unterschiedlich lange dauern. ich möchte gern ...

Windows 10

Windows 10 - registry eintrag "datum und uhrzeit automatisch festlegen"

ZacMcKrackenFrageWindows 108 Kommentare

moin, wenn ich dokumente scanne, bekommen die "leider" das aktuelle systemdatum ich hätte gerne, dass die ein bestimmtes datum ...

Windows 10

Windows 10, Datum und Uhrzeit, Zeitserver kann nicht geändert werden

ForgottenRealmFrageWindows 103 Kommentare

Moinmoin, bei einem meiner PCs habe ich ein Problem mit der timedate.cpl. Unter "Internetzeit" "Einstellungen ändern" "Server" kann man ...

Microsoft Office

Excelfunktion Automatisches Eintragen von Datum und Uhrzeit bei ausgefüllter Zelle

gelöst ScrisesFrageMicrosoft Office3 Kommentare

Hallo Excel-Götter, ich kämpfe gerade mit folgendem Problem. Ich habe eine Software, welche mir Messwerte in eine Excel-Liste überträgt. ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT