У меня есть каталог назовём его C: \ MoveFile в этом каталоге находятся тысячи файлов одноименныхPowershell Move самый последний файл
- Имя Дата Модифицированные
- Dog_123123_Grey.doc 18/11/2015
- Dog_123123_Grey (2) .doc 19/11/2015
- Dog_123123_Grey (3) .doc 17/11/2015
- Cat_123123_Blue (3) .doc 01/01/2015
- Cat_123123_Pink (6) .doc 07/04/2015
- Cat_123123_Pink (7) .doc 10/04/2015
Теперь, если номер версии в имени файла последовательно пронумерованы (2) и т.д. было бы быть легким, однако то, что я хочу сделать, - это запустить powershell через элементы в каталоге и перенести самый последний файл на основе даты, измененной в новое местоположение файла, чтобы из списка при условии, что новый каталог будет содержать.
Имя Дата Modified
- Dog_123123_Grey (2) .doc 19/11/2015
- Cat_123123_Blue (3) .doc 01/01/2015
- Cat_123123_Pink (7) .doc 10/04/2015
Теперь, насколько моя голова может получить с этим,
gci C:\MoveFile\*.doc | sort LastWriteTime -desc | select -first 1 | cpi -dest c:\NewDirectory
Что я не тестировал, поскольку я знаю, что он не является полным и не будет делать то, что мне нужно, чтобы быть честным, я знаю, что мне почему-то нужно игнорировать все, что находится в скобках, например. (3), который я не знаю, как это сделать. Я подумал о том, чтобы «как-то» смотреть только на первые 15 цифр, но некоторые из имен файлов могут быть длиннее или короче этого.
Поцарапав голову от разочарования, у кого больше опыта, чем у меня есть идеи?
Я не понимаю логику ваших двух файлов «кошка» в вашем результате. –