Я работаю с каталогом со структурой: файлы года имени учетной записи.
В каждой группе файлов по году и имени обычно есть один или несколько файлов, которые содержат "*Data Rec*"
в имени файла. Я хотел бы взять только самый последний файл с таким именем для каждой группы файлов. Прямо сейчас у меня есть приведенный ниже код, который работает, но возвращает только один файл, хотя есть папки для 2012, 2013 и 2014 годов, каждая из которых содержит хотя бы один файл "*Data Rec*"
. Также он не сохраняет структуру каталогов. Он только бросает файл в место назначения. Файл находится в папке 2014 года, поэтому я хотел бы, чтобы мой пункт назначения содержал папку 2014 года с файлом "*Data Rec*"
внутри.
Get-ChildItem -Path $path -Recurse -Filter "*Data Rec*" |
Sort-Object LastAccessTime -Descending |
Select-Object -First 1 |
% { Copy-Item -Path $_.FullName -Destination $destination }
В конце концов я хотел бы также иметь возможность искать самый последний файл "*Analysis*"
, если выбранная папка не содержит файл "*Data Rec*"
.