voiper
Goto Top

Recursiv Unterordner anlegen Powershell

Moin,

folgendes Problem:

Ich habe eine Ordnerstruktur, bei der in jedem Unterordner der Order "00_Archiv" anlegt wird. Leider ist mir bei einer Migration gestern der Filewatcher gestorben, der das automatisch macht (nochmal danke an @colinardo dafür ) .
Nun wollte ich das gerne Script erledigen aber mein If-Statement haut nicht hin. Der Ordner soll nur angelegt werden, wenn noch kein 00_Archiv existiert und kein parent 00_Archiv ist.

Mein Script sieht bisher so aus:

ForEach($dir in (Get-ChildItem 'C:\Users\Ich\Desktop\Bla' -Recurse | Where{$_.psiscontainer}))  
{
$parentPath = (get-item $dir.fullname).parent
If(!(Test-Path "$($dir.fullname)\00_Archiv") -and $parentPath -ne "00_Archiv"){  

    New-Item "$($dir.fullname)\00_Archiv" -type directory | Out-Null  
    Write-Host "Folder created in $($dir.fullname)"  
}
}


Vielen Dank und Gruß,

V

Content-Key: 321838

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

Printed on: April 25, 2024 at 15:04 o'clock

Mitglied: 131381
Solution 131381 Nov 23, 2016 updated at 11:28:55 (UTC)
Goto Top
Leider ist mir bei einer Migration gestern der Filewatcher gestorben
R.I.P. face-wink
gci 'C:\Users\Ich\Desktop\Bla' -Recurse -Directory | ?{$_.Fullname -notmatch '00_Archiv' -and !$_.GetDirectories('00_Archiv',1)} | %{md "$($_.FullName)\00_Archiv" -Verbose | out-null}  
Gruß
Member: Voiper
Voiper Nov 23, 2016 updated at 13:02:28 (UTC)
Goto Top
Ich danke vielmals ;) funktioniert (sogar mein verbose ist mit drin face-smile )