Я ищу команду, которая дает мне возможность копировать файл с наибольшим количеством в имени из папки.Скопируйте файл с наибольшим количеством в filename с помощью PowerShell
Я использовал эту команду, чтобы скопировать новейший файл из папки (с некоторыми фильтрами, которые мне нужны):
Get-ChildItem "B:\" -Filter '*.exe' | Where Name -NotMatch '.*NoDB\.exe$' | Sort LastWriteTime -Descending | Select -First 1 | Copy-Item -Destination 'D:\'
Вот структура папок, которые у меня есть:
Release_OSInstaller_2015_CL287638x64_NoDB.exe
Release_OSInstaller_2015_CL287638x64.exe
Release_OSInstaller_2015_CL287337x64_NoDB.exe
Release_OSInstaller_2015_CL287337x64.exe
Так что мне нужно для копирования Release_OSInstaller_2015_CL287638x64.exe, поскольку имя файла состоит из самого большого числа 287638. Кроме того, мне нужно убедиться, что файлы с параметром «NoDB.exe» не будут скопированы.
Дэйв, спасибо так много ! Я даже обновляю ваш скрипт, и теперь я могу не только скопировать, но и выполнить файл с наибольшим числом в имени файла Get-ChildItem "C: \ Users \ Имя Фамилия \ Рабочий стол" -Filter * .exe | Где имя -NotMatch '. * NoDB \ .exe $' | % { Новый объект psobject -Property @ { No = [int] ([regex] :: Match ($ _. Name, '(? <= CL) \ d +'). Значение) Name = $ _. FullName } } | Сортировать по убыванию Выберите -ExpandProperty Name -First 1 | Invoke-Item Удивительно! Спасибо, Дейв! –