Hallo Technet-Forum
Mein Auftrag ist, alle Dateien auf D:\ , die schon 2 Jahre nicht geändert worden sind, auf Laufwerk E:\ zu schieben. Dann sollen automatisch symbolische Links erstellt werden, damit die Dateien von D:\ aus geöffnet werden können. Ich habe soweit alle Codeteile zusammen, aber es klappt nicht wegen der arrays oder so.
$cold = Get-childitem -path D:\ -recurse | Where-object {$_.Lastwritetime -lt (get-date).AddYears(-2)} | foreach {$_.Fullname}
foreach($element in $cold) {$elementname = split-path $element -noqualifier } # für symbol. Link
#verschiebt: Get-childitem -path D:\ -recurse | Where-object {$_.Lastwritetime -lt (get-date).AddYears(-2)} | move-item -destination E:\ ;
$colddata = dir E:\
#symbol. Links (/D) aus cmd hochholen ( cmd /c ) , dann Linkname D:$cold, dann realer Speicher (E:\)
foreach($colddatei in $colddata) {cmd /c "mklink /D D:$elementname E:\ "}
#Es wird nur der erste Symbol. Link angelegt, dann heißt es : kann nicht erstellt werden -->Datei bereits vorhanden--> muss am array liegen, oder?
Freue mich sehr über Hilfe!