![]() |
Проблема с командой FIND
Вложений: 1
Всем привет, пишу программу Говорящие часы но возникла проблема с командой FIND. Батник мой записывает в файл данное время а затем команда FIND многократно в цикле проверяет указное значение и если есть совпадения тогда запускается соответствующий времени звуковой скрипт. С 0:00 до 10:00 FIND работает нормально но с 10:00 до 23:00 уже работает не корректно искомая строка одну цифру как будто съедает в результате проверки значение неверное и в целом программа работает неправильно.
Пример Код:
:every-15_minutes http://forum.oszone.net/attachment.p...1&d=1457826426 Уже неделю бьюсь над этой проблемой.... Помогите пожалуйста исправить эту ошибку? |
find работает правильно -- ищет "2:00" и находит в строке "22:00".
используйте findstr Код:
findstr "\<2:00" m.txt |
Цитата:
|
А чего непонятного? 22:00
|
Цитата:
|
Цитата:
|
Цитата:
Еще будут идеи? |
angel_lyucifer, Реальное время 2 часа ночи, а файле config.txt десять вечера. Я правильно понимаю? По другому не должно быть. У вас случайно не перепутано системное время (в config.txt, может туда пишется вместо дня ночь? Или другой часовой пояс.)
|
Цитата:
Примеры: Пишет в файле config.txt 17:15 findstr или find видит как 7:15 11:00 findstr или find видит как 1:00 23:30 findstr или find видит как 3:30 10:00 findstr или find видит как 0:00 14:45 findstr или find видит как 4:45 20:00 findstr или find видит как 0:00 13:30 findstr или find видит как 3:30 и т. д. |
Цитата:
![]() |
angel_lyucifer, указанные приложения ищут указанную подстроку в указанной строке. Подстрока «2:00» будет найдена и в «2:00», и в «22:00», и в «12:00», и в «bla-bla-bla2:00bla-bla-bla».
Для того, чтобы она была найдена только в «2:00», но не во всех остальных случаях, коллега Foreigner уже во втором сообщении указал, что нужно делать — использовать регулярное выражение. Но Вы как не слышите. |
|
Хрень какая, а что мешает через тот же find вместо "7:15" искать " 7:15"? Пробел, конечно, мало кто замечает, но это таки тоже символ. Наконец для полного извращения можно парсить вывод
Код:
time /t |
|
Время: 10:44. |
Время: 10:44.
© OSzone.net 2001-