![]() |
Неправильно работает батник в Windows Server 2012
Добрый день. Есть батник, в котором задается переменная %i% которой присваивается значение дня недели в виде цифры (понедельник -1, вторник -2 и т.д.), задается это так:
set /a y=%date:~6,4% set /a m=1%date:~3,2%-100 set /a d=1%date:~0,2%-100 set /a i=(%y%-1901)*365 + (%y%-1901)/4 + %d% + (!(%y% %% 4))*(!((%m%-3)^&16)) set /a i=(%i%+(%m%-1)*30+2*(!((%m%-7)^&16))-1+((65611044^>^>(2*%m%))^&3))%%7+1 То же самое в Windows Server 2012 работает не правильно, переменной %i% присваивается 5-ти значное число, что это может быть ? |
Возможно, это связано с другим форматом даты в переменной %DATE%. Проверте выполнение команды
Код:
ECHO %DATE% Проверьте также такой вариант: Код:
@ECHO OFF |
Цитата:
А на сервере 2012: 04-Jun-2013 Как лучше поменять вид даты в настройках сервера или можно как то переписать этот код ? |
foma24, переделал Ваш "батник" под Вашу ОС (Windows Server 2012):
Код:
@ECHO OFF Проверить не на чем, но, по-моему, работает. |
Проверил, сегодня среда, т.е. должна быть цифра 3, выдает 5
|
Время: 13:05. |
Время: 13:05.
© OSzone.net 2001-