Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/53: Рейтинг темы: голосов - 53, средняя оценка - 4.91
butterfly1984
0 / 0 / 0
Регистрация: 16.07.2010
Сообщений: 3
1

Сравнение даты создания файла с заданной датой

25.06.2012, 15:21. Просмотров 9803. Ответов 2
Метки нет (Все метки)

Здравствуйте! Подскажите пожалуйста возможно ли решить мою проблему...
Мне нужно отобрать файлы из каталога новее определенной даты (включая время).
Код bat файла ниже с комментариями.
Проблема в том, что хотя переменная %%~tz содержит время, но сравнить получается только по дате. Если указываю время, то скрипт вобще не работает.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
echo off                                      
cd /D "_путь к каталогу_"
setlocal enabledelayedexpansion               
for /f "delims=" %%z in ('dir /O-D *.txt /b') do ( 
 
REM [так не работает] IF /i %%~tz GEQ '25-06-2012 09:01' ( echo %%~tz %%z ) ELSE (goto end)
 
REM [то что ниже работает]
IF /i %%~tz GEQ '24-06-2012' ( echo %%~tz %%z ) ELSE (goto end)
 
)
:end
pause
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.06.2012, 15:21
Ответы с готовыми решениями:

Сравнение даты создания файла с текущей датой
Добрый день! Помогите пожалуйста допилить скрипт: for %%i in ("myfile")...

Сравнение даты создания
Люди добрые, помогите, как сравнить дату создания файла с текущей датой? и если...

Как запустить из cmd файл с самой поздней в заданной папке датой создания?
Требуется в автозагрузку кинуть bat-ник, который будет загружать excel-вский...

Изменить даты и время создания файла, взяв информацию из имени файла
Привет! Есть файл "Call@recording@005_20150216113542.mp3" В его имени после "_"...

Вывод на экран консоли только имени и даты создания файла
Здравствуйте, необходимо вывести на экран консоли имена и даты создания файлов,...

2
gimntut
882 / 184 / 16
Регистрация: 18.07.2011
Сообщений: 260
26.06.2012, 16:59 2
Сначала нужно привести к числовому виду, после этого можно сравнивать. Примерно так:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
set date1=25-06-2012 09:01
set date2=25-06-2012 09:02
 
call :convert result1 "%date1%"
call :convert result2 "%date2%"
 
if %result1% LEQ %result2% echo OK
exit /b
 
:convert
set tmp.result=%~2
set /a %1=%tmp.result:~8,2%%tmp.result:~3,2%%tmp.result:~0,2%%tmp.result:~11,2%%tmp.result:~14,2%
exit /b
1
butterfly1984
0 / 0 / 0
Регистрация: 16.07.2010
Сообщений: 3
26.06.2012, 18:30  [ТС] 3
ОГРОМНОЕ СПАСИБО!!! Работает!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.06.2012, 18:30

В указанном каталоге и его подкаталогах найти 3 самых больших файла, вывести их имена, размеры и даты создания
Помогите пожалуйста написать задание из лабораторной работы по ОС 2. В...

Создание файла с именем текущей даты и вывод в него информации о заданной директории
Помогите, как разработать пакетный файл для создания файла с именем текущей...

Вывести на экран имя и дату создания (или изменения) самого свежего файла в заданной папки
Добрый день, есть небольшая проблема: Нужно вывести на экран имя и дату...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru