Есть каталог C:\DATA\IN. В каталоге содержится несколько подкаталогов MON,WED,FRI. В этих каталогах каталоги с хаотичным названием, содержащие файлы, отличающиеся только суффиксом (timestamp). К примеру
C:\DATA\IN\MON\TST\TST_123.xls
C:\DATA\IN\MON\TST\TST_345.xls
C:\DATA\IN\FRI\DEMO\DEMO_123.xls
C:\DATA\IN\FRI\DEMO\DEMO_345.xls
Необходимо копировать последние файлы из каталогов с хаотичным названием в D:\OUT\[MON,WED,FRI]- тем самым получае только последние версии файлов. На текущий момент это делается тремя скриптами. Каждый
скрипт обрабатывает MON,WED и FRI.
Можно ли оптимизировать данную структуру для обработки одним скриптом, который будет последовательно обрабатывать все три каталога? Т.е задаем только C:\DATA\IN, а дальше уже ...
$Source = "C:\DATA\IN\"
$Destination = "D:\OUT\"
$FolderName = Get-ChildItem $Source | %{$_.Name}
foreach ( $a in $FolderName ) {
$Data = Get-ChildItem -recurse $Source\$a | sort LastWriteTime -desc | select -first 2 | %{$_.FullName}
foreach ( $b in $Data ) {
if ( Copy-item $a $Destination\ -Force -PassThru -EA SilentlyContinue) {}
else {
}
}
}
Но при таком методе все сваливается в D:\OUT\, а необходимо в D:\OUT\[MON,WED,FRI]
Есть ли решение? Заранее спасибо