Daten nach dem auslesen per Powershell moven - kopieren - löschen
Hallo,
ich bin recht neu auf dem Gebiet des "komplizierteren" scripten und versuche mir mit Hilfe von Google etwas zusammenzubauen.
Das Thema ist ich habe ein Share auf dem Datensicherungen wöchentlich abgelegt werden in der Struktur:
in der die ältesten Sicherungen gemoved /kopiert werden sollen.
ich habe es nun geschafft per Powershell Script eine Liste der ältesten Ordner zu erstellen:
nun schaffe ich es nicht im Powershell die Ordner inklusive genanntem in der Liste zu verschieben / kopieren, da klappt das immer nur mit desssen Inhalt und die gegebene Ordnerstruktur wird nicht mitgenommen
jetzt habe ich es geschafft ein cmd zu bastel, das eine Liste mit Robocopy abbarbeitet, klappt auch, allerdings hätte ich das gerne in einem Script, am liebsten mit Powershell:
kann mir jemand helfen, den letzten Teil in Powershell zu übersetzen?
Außerdem bräuchte ich dann auch noch eine Protokollierung über jedes File das in der Struktur gemoved /kopiert wurde
Danke euch schonmal
ich bin recht neu auf dem Gebiet des "komplizierteren" scripten und versuche mir mit Hilfe von Google etwas zusammenzubauen.
Das Thema ist ich habe ein Share auf dem Datensicherungen wöchentlich abgelegt werden in der Struktur:
Share\Abteilung 1\Gerät A\Sicherung 1
Sicherung 2
Sicherung 3
Gerät B\Sicherung 1
Sicherung 2
Sicherung 3
Abteilung 2\Gerät A\Sicherung 1
Sicherung 2
Sicherung 3
etc
ich habe es nun geschafft per Powershell Script eine Liste der ältesten Ordner zu erstellen:
$folder="\\Share\Freigabe"
$Datum=(get-date).adddays(-28)
$liste="C:\temp\liste.txt"
ls $folder | ? { $_.name -notlike "_intern" } | ls | ls | ? { $_.lastwritetime -lt $datum -and $_.psiscontainer } | % { $_.FullName } > $liste
jetzt habe ich es geschafft ein cmd zu bastel, das eine Liste mit Robocopy abbarbeitet, klappt auch, allerdings hätte ich das gerne in einem Script, am liebsten mit Powershell:
rem @echo off & setlocal
set Source=C:\Test\Quelle
set Archiv=C:\Test\Archiv
set List=C:\Test\INI\List.txt
for /f "usebackq delims=" %%i in ("%List%") do call :ProcessFile "%%i"
goto :eof
:ProcessFile
set S=%Source%\%~1
set T=%Archiv%\%~1
if not exist "%T%" md "%T%"
Robocopy %S% %T% /E
Außerdem bräuchte ich dann auch noch eine Protokollierung über jedes File das in der Struktur gemoved /kopiert wurde
Danke euch schonmal
Please also mark the comments that contributed to the solution of the article
Content-Key: 307775
Url: https://administrator.de/contentid/307775
Printed on: May 14, 2024 at 11:05 o'clock
1 Comment
Hallo,
https://gallery.technet.microsoft.com/scriptcenter/Another-PowerShell-sc ...
http://serverfault.com/questions/129098/how-to-get-robocopy-running-in- ...
Robocopy Quelle Ziel /NP /NDL /Log+:F:\Robolog\Log.log
Gruß,
Peter
https://gallery.technet.microsoft.com/scriptcenter/Another-PowerShell-sc ...
http://serverfault.com/questions/129098/how-to-get-robocopy-running-in- ...
Außerdem bräuchte ich dann auch noch eine Protokollierung über jedes File das in der Struktur gemoved /kopiert wurde
Robocopy Quelle Ziel /NP /NDL /Log:F:\Robolog\Log.log oder einRobocopy Quelle Ziel /NP /NDL /Log+:F:\Robolog\Log.log
Gruß,
Peter