pixel0815
Goto Top

Powershell Kopiere Dateien in s Archiv Verzeichnis

Mooin zusammen,

irgendwie sollte dieses Skript alle Dateien von der Source die innerhalb 24h erstellt worden sind auf den ArchiveFolder kopieren inkl. dem Ordner.
Die Ordner wurden nur teilweise angelegt und die kopiererei klappt nicht.
Allerdings hagelt es dann Fehlermeldungen das der Pfad nicht stimmt.

Was läuft hier falsch?

Copy-Item : Ein Teil des Pfades "M:\test\xxxxxxxxxxxxxxxxxxxxxx.trn" konnte nicht gefunden werden.  
In Zeile:23 Zeichen:5
+     Copy-Item $_.FullName -Destination $Newpath
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Copy-Item], DirectoryNotFoundException
    + FullyQualifiedErrorId : System.IO.DirectoryNotFoundException,Microsoft.PowerShell.Commands.CopyItemCommand


$SourceFolder = "J:\"  
$ArchiveFolder = "M:\Test"  
$ChangesStarted = (get-date).AddDays(-1)
$IncludeFiles = ("*.bak","*.trn")  

Get-ChildItem $SourceFolder -Recurse -Include $IncludeFiles | Where-Object {$_.LastWriteTime -gt $ChangesStarted} | ForEach-Object {
    $PathArray = $_.FullName.Replace($SourceFolder,"").ToString().Split('\')   

    $Folder = $ArchiveFolder

    for ($i=1; $i -lt $PathArray.length-1; $i++) {
        $Folder += "\" + $PathArray[$i]  
        if (!(Test-Path $Folder)) {
            New-Item -ItemType directory -Path $Folder
        }

    }   
    $NewPath = Join-Path $ArchiveFolder $_.FullName.Replace($SourceFolder,"")  

    Copy-Item $_.FullName -Destination $Newpath
}

Content-ID: 332021

Url: https://administrator.de/contentid/332021

Ausgedruckt am: 21.11.2024 um 21:11 Uhr

132692
132692 13.03.2017 aktualisiert um 13:13:02 Uhr
Goto Top
Hi.
Viel zu umständlich, schau mal hier:
Dateien in gleiche Ordnerstruktur verschieben mit Powershell

P.
pixel0815
pixel0815 13.03.2017 um 13:44:49 Uhr
Goto Top
Stimmt. Das funktioniert ganz gut.
Schön wäre eine Möglichkeit beim copy Vorgang eine art Progress Bar zu haben, da doch Dateien kopiert werden die schon mal 50-100 GB groß sind.
132692
Lösung 132692 13.03.2017 aktualisiert um 13:48:06 Uhr
Goto Top
Wieso? Sitzt du daneben und schaust zu face-smile? Nimm den -verbose Parameter von copy-item oder nimm Robocopy zum kopieren.
pixel0815
pixel0815 13.03.2017 um 13:49:10 Uhr
Goto Top
Ach wenn du wüsstest, das ist so ne Sache die man im Auge haben muss ;)
132692
Lösung 132692 13.03.2017 um 13:50:33 Uhr
Goto Top
pixel0815
pixel0815 13.03.2017 um 13:51:27 Uhr
Goto Top
Der -verbose Parameter ist schon mal hilfreich.
So gefällt mir das :o)