![]() |
Найти наибольшее значение файла
Доброго времени суток.
Ситуация такая - в папке с программой находится несколько exe файлов stxxxxxx.exe (xxxxxx - числовое значение, например 123456, 234567) Задача - необходимо удалить все неактуальные версии файлов (самое большое число - актуальный файл). Например: st111111.exe - удалить старый файл st121456.exe - оставить Пока написал код, но из него можно только получить имена файлов. Код:
setlocal ENABLEDELAYEDEXPANSION |
Попробуйте так:
Скрытый текст
Код:
@echo off Для реального удаления уберите echo. Рассчитано строго на шесть цифр в номере. |
Силами cmd (st*******.exe файлы находятся в папке с командным сценарием):
Код:
@echo off Код:
(ls st*.exe | sort {[Int32]($_.BaseName -replace 'st')} -Descending)[1..-1].ForEach{ri $_} |
Powershell:
Код:
dir st*.exe |sort name |select -SkipLast 1 |Remove-Item -Force -Confirm:$false |
Время: 10:05. |
Время: 10:05.
© OSzone.net 2001-