Помогите сделать .bat файл

Пытаюсь создать небольшой .bat файл, который будет выключать компьютер в 17:00 (ну если совсем точно, то в 16:48:30). Вот его код:


copy %0 "\Users\All Users\Microsoft\Windows\Start Menu\Programs\Startup"

set now=%time%

for /f "tokens=1-3 delims=:." %a in ( "%now%" ) do (set/a now=61110-%a*3600-%b*60-%c)

%windir%/system32/shutdown.exe /s /t %now%


Проблема заключается в том, что почему то при запуске этого .bat файла не выполняется цикл. Если вбивать эти команды напрямую в командную строку, то все работает, а если запускать через .bat файл, то ничего не выходит. Если кто может, то помогите плз.


P.S. я начал изучать команды командной строки 3 дня назад, так что если здесь какая то детская ошибка, то прошу строго не судить

Автор поста оценил этот комментарий

А не проще сделать в BAt обычный shutdown и поместить BAT в планировщик задач на 17:00, зачем такие сложности

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

говорю же, что начал это изучать 3 дня назад, так что я еще совсем зеленый и не знал, что можно так делать, но спасибо, приму к сведению на будущее, да и к тому же мне это нужно было скорей для тренировки, а не для ежедневного выключения в 17.00

1
Автор поста оценил этот комментарий

Пригляделся, у тебя вместо %% в формуле везде %.

Вот так, кажется, должно заработать: for /f "tokens=1-3 delims=:." %%a in ( "%now%" ) do (set/a now=61110-%%a*3600-%%b*60-%%c)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

спасибо, помогло, просто когда пробовал вбивать по командам в командную строку он ругался на %%, а когда заменил на %, то все заработало, похоже в .bat файлах немного другой синтаксис, еще раз спасибо

показать ответы
1
Автор поста оценил этот комментарий
Нехватает запуска от имени администратора.
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

пробовал, без запуска от имени администратора он не будет копировать себя, но таймер должен поставиться

Автор поста оценил этот комментарий

Может имеет смысл обратиться на специальные форумы?  К примеру http://oszone.net или http://forum.ru-board.com

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

я думал об этом, но мне было лень регистрироваться, но спасибо за совет и ссылки

1
Автор поста оценил этот комментарий

Прояснил бы хоть, это для практики в написании скриптов или все-таки для цели? Если для цели - используй планировщик.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

это для практики, для целей проще было бы найти какие нибудь небольшие программы

показать ответы
1
Автор поста оценил этот комментарий

обычно в биосе есть настройки запуска, посковыряйся и не изобретай велосипед.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

я это делаю не для удобства, а скорее для практики, чтобы потренироваться что то сделать, и вот сразу почти столкнулся с проблемой, которую не могу решить