Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
trdm
180 / 35 / 5
Регистрация: 29.01.2013
Сообщений: 233
1

Команда IF не выполняется при сравнении дат изменения файлов

16.01.2016, 21:00. Просмотров 299. Ответов 2
Метки нет (Все метки)

бат-файлик копирует файл в проддиректорию, переходит туда и обрабатывает его.
Захотелось сделать так, что-бы обработка производилась, только если дата и время создания фалов отличались.
Модифицировал файл вот так:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
for %%i in ("1cv7.md") do set s=%%~ti
echo %s%
 
for %%i in ("SRC\1cv7.md") do set s2=%%~ti
echo %s2%
 
IF /I %s% EQL %s2% (    goto endbar )
rem goto endbat
rem разбираем md в папку SRC
rem echo off
 
copy 1cv7.md SRC\1cv7.md
cd SRC
gcomp --version
gcomp -d -vv -D C:\SRC_1C\a\SRC > zz_gcomp_log.txt
 
MPLAY32 /play /close /MIN D:\WINDOWS\Media\ding.wav
 
:endbar
echo File time is equal.....
pause
exit
 
:endbat
pause
Пробую, запускаю обработка не происходит, хотя даты изменения файлов отличаются.
Затык по видимому на строке
Windows Batch file
1
IF /I %s% EQL %s2% (    goto endbar )
Но я понятия не имею в чем проблема, помогите плз.
окно мелькает быстро и тут же закрывается.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2016, 21:00
Ответы с готовыми решениями:

Ошибка при сравнении дат
Парни в чем может быть ошибка при сравнении дат. Ругается на несоответствие типов данных в условия...

Исправить ошибку при сравнении дат
помогите пожалуйста, пытаюсь сравнить даты в одном столбце, текущую с предыдущей, и если текущая...

При открытии программы выполняется команда
Мне надо чтоб при открытии моей программы выполнялась команда в моём случае это...

Изменение дат модификации (изменения) файлов на основе имён папок, в которых находятся эти файлы
Всем привет! Столкнулся с такой задачей: есть папки вида ГГГГ\\*.jpg ГГГГ - год; ММ - месяц;...

Найти ошибку при сравнении файлов
Помогите,пожалуйста найти ошибку. По заданию надо описать логическую функцию eq(f,q),проверяющая на...

2
greg zakharov
Покинул форум
2318 / 969 / 270
Регистрация: 07.05.2015
Сообщений: 1,912
16.01.2016, 21:47 2
Пример проверки штампов времени создания файлов file1 и file2:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@echo off
  setlocal
    call:toZip file1 ft1
    call:toZip file2 ft2
    
    if "%ft1%" equ "%ft2%" (
      echo:Both created at same time.
      goto:eof
    )
  endlocal
exit /b
 
:toZip
for /f "tokens=1,2" %%i in (
  'dir /tc %1 ^| findstr %1'
) do (
  set "d=%%i"&set "t=%%j"
)
set /a dd=%d:~6,4%-1980,dd^<^<=9,dd^|=%d:~3,2%^<^<5,dd^|=%d:~0,2%
set /a dt=%t:~0,2%^<^<11,dt^|=%t:~3,2%^<^<5
set "%2=%dd%%dt%"
exit /b
1
trdm
180 / 35 / 5
Регистрация: 29.01.2013
Сообщений: 233
16.01.2016, 23:56  [ТС] 3
Цитата Сообщение от greg zakharov Посмотреть сообщение
Windows Batch file
1
if "%ft1%" equ "%ft2%"
Мерси, работает!
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2016, 23:56

Ошибка в сравнении дат
Проблема довольно... странная. Если коротко, то пишу команду ...

Добавление недостающих строк при сравнении двух файлов
Добрый день! В postfix часто приходится вносить множество адресов для блокировки спама и прочей...

OutOfMemory при сравнении MD5 нескольких больших файлов
Доброго времени суток. Пилю программу файловой односторонней синхронизации заточенную под нужды...


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

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

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