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, 407 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
Ubuntu
HAProxy-Wi: Installation des Pakets geht nicht - ich hätte keine enabled Repos
itnirvanaFrageUbuntu37 Kommentare

Hallo, von der Seite möchte ich gerne HAProxy-Wi installieren ich führe das hier aus Dann kommt -> There ar ...

Multimedia
Fernseher im Empfang GEMA-pflichtig?
CaptainDuskyFrageMultimedia27 Kommentare

Guten Tag, wenn ich in einer Firma einen Fernseher im Empfang betreibe, dort aber nur Nachrichten laufen lasse, ist ...

LAN, WAN, Wireless
Wlan Messgerät
gelöst fizlibuzliFrageLAN, WAN, Wireless23 Kommentare

Hallo, gibt es erschwingliche Messgeräte um vorhanden W-Lan ausleuchtungen in ihrer Signalstärke und Bandbreite zu messen. Es sollen einfache ...

Microsoft
Failover Cluster Network
samreinFrageMicrosoft21 Kommentare

Hallo zusammen, toller Freitag heute vielleicht kann mir jemand unter die Arme greifen. Ich habe einen Failover Cluster gebaut. ...

Windows Server
PowerShell Script für MailVersand mit Anhang
gelöst klausk94FrageWindows Server20 Kommentare

Hallo Zusammen, ich bin aktuell etwas am verzweifeln an einem PS Script für den Emailversand Das Script funktioniert, jedoch ...

Router & Routing
Kaufempfehlung WLAN Router mit VLAN Unterstützung
ccreccFrageRouter & Routing19 Kommentare

Hallo zusammen, ich wollte mal nach einer Kaufempfehlung für einen WLAN Access Point mit halbwegs vernünftiger VLAN Unterstützung fragen. ...

Ähnliche Inhalte
Batch & Shell

Windows 10 Batch für Datum und Uhrzeit setzen

solved zeroblue2005QuestionBatch & Shell18 Comments

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

solved omroettgerQuestionBatch & Shell2 Comments

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

MarciMarc85QuestionWindows Server4 Comments

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"

ZacMcKrackenQuestionWindows 108 Comments

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

ForgottenRealmQuestionWindows 103 Comments

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

solved ScrisesQuestionMicrosoft Office3 Comments

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