Datei vom letzten Tag am Monatsende in anderen Ordner (automatisiert) kopieren und restliche Daten aus dem Monat löschen
Hallo ihr Lieben,
ich stehe vor folgendem Problem auf einem Windows 2008 R2 Server läuft jeden Tag eine SQL Sicherung , so dass jeden Tag entsprechende Dateien angelegt werden wie z.B:
guide_backup_2016_11_01_210002_7308339.bak
guide_backup_2016_11_02_210002_7076340.bak
guide_backup_2016_11_03_210001_0415298.bak
...
guide_backup_2016_11_28_210003_9812606.bak
guide_backup_2016_11_29_210002_7582227.bak
Diese Dateien liegen unter D:\SicherungSQLServer\guide
Nun würde ich gerne automatisiert die letzte angelegte Datei vom letzten Tag am Monatsende zu Beginn des nächsten Monats in den Unterordner D:\SicherungSQLServer\guide\Monatssicherung automatisch verschieben lassen also z.B. wäre dann die letzte Datei im Monat November guide_backup_2016_11_29_210002_7582227.bak , welche dann nach Monatssicherung verschoben werden soll
Da aber natürlich die anderen Monate nicht am 29. enden , sondern vom 28-31. stehe ich jetzt vor dem Problem wie das ganze Umzusetzen ist
Ich möchte also , dass zuerst die Sicherung vom letzten Tag am Monatsende woanders hin verschoben/kopiert wird und anschließend alle anderen Sicherungen des entsprechenden bereits durchgelaufenen Monats gelöscht werden.
Wie stelle ich das am besten an ?
Für Eure Hilfe bin ich sehr dankbar!
Liebe Grüße,
Grisu
ich stehe vor folgendem Problem auf einem Windows 2008 R2 Server läuft jeden Tag eine SQL Sicherung , so dass jeden Tag entsprechende Dateien angelegt werden wie z.B:
guide_backup_2016_11_01_210002_7308339.bak
guide_backup_2016_11_02_210002_7076340.bak
guide_backup_2016_11_03_210001_0415298.bak
...
guide_backup_2016_11_28_210003_9812606.bak
guide_backup_2016_11_29_210002_7582227.bak
Diese Dateien liegen unter D:\SicherungSQLServer\guide
Nun würde ich gerne automatisiert die letzte angelegte Datei vom letzten Tag am Monatsende zu Beginn des nächsten Monats in den Unterordner D:\SicherungSQLServer\guide\Monatssicherung automatisch verschieben lassen also z.B. wäre dann die letzte Datei im Monat November guide_backup_2016_11_29_210002_7582227.bak , welche dann nach Monatssicherung verschoben werden soll
Da aber natürlich die anderen Monate nicht am 29. enden , sondern vom 28-31. stehe ich jetzt vor dem Problem wie das ganze Umzusetzen ist
Ich möchte also , dass zuerst die Sicherung vom letzten Tag am Monatsende woanders hin verschoben/kopiert wird und anschließend alle anderen Sicherungen des entsprechenden bereits durchgelaufenen Monats gelöscht werden.
Wie stelle ich das am besten an ?
Für Eure Hilfe bin ich sehr dankbar!
Liebe Grüße,
Grisu
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 325565
Url: https://administrator.de/contentid/325565
Ausgedruckt am: 19.03.2024 um 05:03 Uhr
7 Kommentare
Neuester Kommentar
PS zum Beispiel:
Gruß mik
$files = gci 'D:\SicherungSQLServer\guide' -Filter *.bak | ?{$_.LastWriteTime.toString('yyyyMM') -eq (get-date).AddMonths(-1).toString('yyyyMM')} | sort LastWriteTime -Desc
$files | select -First 1 | move-item -Destination 'D:\SicherungSQLServer\guide\Monatssicherung' -Force
$files | select -skip 1 | remove-item -Force
Deine Pfade
und welche Einstellungen sollte ich idealerweise im Taskplaner vornehmen (also wann sollte das Skript am besten laufen ?) ?
Z.B. am ersten des Monats.
Da fehlt nur ein s bei AddMonths.
Scheint als hättest du nur Bullshit bei dir kopiert ...Kopiere den Code oben mal vernünftig! Er läuft einwandfrei.
I'm out.
I'm out.