Это достаточно просто в PowerShell.Сохраните следующий код в файле, например keeplast.ps1
.
. Непонятно, почему вы используете параметр / XD.
Сортировка по убыванию LastWriteTime с последующим пропуском первой записи приведет кпроизвести другие имена файлов.Когда вы убедитесь, что правильные шаги будут выполнены, удалите -WhatIf
из командлета Move-Item
.
$sourcedir = 'C:\src\t'
$destdir = $Env:TEMP
Get-ChildItem -File -Path $sourcedir |
Sort-Object -Property LastWriteTime -Descending |
Select-Object -Skip 1 |
Move-Item -Destination $destdir -WhatIf
Если вам нужно запустить его из оболочки cmd, используйте:
powershell -NoProfile -File .\keeplast.ps1
При необходимости можно создать скрипт файла .bat.
@ECHO OFF
powershell -NoProfile -File .\keeplast.ps1
EXIT /B