Взять значение из свойства файла
Подскажите, возможно ли посредством командного файла зайти в свойства файла и записать оттуда значение? В частности интересует, как в перечне файлов .msp войти в свойства, из вкладки "Общие" строки "Изменен:" взять только значение даты (например 24 января 2010г.), сравнить с датами в других .msp и вывести в echo самую позднюю дату в формате 24.01.2010
|
по всем msp-файлам текущего каталога:
Код:
@echo off
for /f "delims=" %%d in ('dir/b/od *.msp') do set "$d=%%~td"
echo %$d:~,10%
pause>nul
|
Код:
@Echo Off
SetLocal EnableDelayedExpansion
:: Обрабатываемая папка
Set Folder=n:\_My_ADDONs\_DotNet11_40\DNet1140\DotNet40\NetMSP
Set lastDate=
For /F "Delims=" %%i In ('DIR /B/S/A-D "%Folder%\*.msp"') Do (
Set datchng=%%~ti
If "!datchng:~6,4!!datchng:~3,2!!datchng:~0,2!" GTR "!lastDate!" Set lastDate=!datchng:~6,4!!datchng:~3,2!!datchng:~0,2!
)
Echo !lastDate:~6,2!.!lastDate:~4,2!.!lastDate:~0,4!
Pause>Nul
Упс... Опоздал. :)
|
а часы и минуты как добавить?
все разобрался
|
Подскажите, почему не работает скрипт с указанием папки поиска?
Код:
@Echo Off
:: Обрабатываемая папка
Set Folder=h:\XPSP3\FINISH\I386\SVCPACK
for /f "delims=" %%d in ('dir/b/od "%Folder%\*.CA_"') do set "$d=%%~td"
echo %$d:~,10%
pause>nul
|
вот так работает
Код:
@Echo Off
:: Обрабатываемая папка
Set Folder=h:\XPSP3\FINISH\I386\SVCPACK
for /f "delims=" %%d in ('dir /b/s/a-d "%Folder%\*.CA_"') do set "$d=%%~td"
echo %$d:~,10%
pause>nul
|
ferget, скрипт заработал, но как ни странно, показывает не самую позднюю дату, по сравнению со скриптом gora
|
Не могу понять, почему не работает отображение максимальной даты. Подскажите, что не так?
Код:
@echo off
SetLocal enabledelayedexpansion
set tt2=%~dp0Msp
for /f "delims=" %%d in ('dir /b /od "%tt2%\*.msp"') do set "$d=%%~td"
Echo %$d:~,10%
pause
|
Никто не хочет объяснить, почему не работает скрипт постом выше?
|
sov44, добавьте ключ /s в строку после dir.
|
gora, огромное спасибо, всё сработало!
|
Время: 17:54.
© OSzone.net 2001-