Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Ожидание нажатия клавиши в течении N секунд иначе выход

Ответить
Настройки темы
CMD/BAT - [решено] Ожидание нажатия клавиши в течении N секунд иначе выход

Новый участник


Сообщения: 26
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день!
Помогите пожалуйста решить задачку, необходимо чтобы при выполнении bat выводилось сообщение "нажмите клавишу" с таймером
Если в течении указанного времени пользователь не нажмет клавишу то ничего не делать, если нажмет, выполнить команду
Код: Выделить весь код
shutdown.exe /a
Код: Выделить весь код
		dir D:\VIDEO\writing* /a-d 2>nul >nul && goto:WritingYes
			Set Record=No
			shutdown.exe -r -f -t 60
		goto:WritingEND
	:WritingYes
		Set Record=Yes
	:WritingEND

Здесь нужно проверить если Record=No то вывести сообщение и ждать в течении 60 сек нажатия клавиши, при нажатии клавиши выполнить shutdown.exe /a
Именно там т.к. после WritingEND идет еще большой кусок кода...

Отправлено: 11:47, 25-12-2018

 

Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


Вариант 1
Код: Выделить весь код
@Echo Off
cls
	Set /A PauseSec=60

	Set /A Record=0
	>nul 2>&1 Dir D:\VIDEO\writing* /a-d && Set /A Record=1
	If %Record% EQU 1 GoTo :Continue

        Echo %Time% Через %PauseSec% сек. компьютер будет отключен.
	CHOICE /C YN /T %PauseSec% /D N /M "Y-Продолжить работу,  N-Выключить"
	If %ErrorLevel% EQU 2 Echo shutdown.exe /r /f /p &GoTo :Eof

	:Continue
	Echo ------ Остальной код
pause
GoTo :Eof
Убрать для боевой работы выделенное Echo
Вариант 2
Код: Выделить весь код
@Echo Off
cls
	Set /A PauseSec=60

	Set /A Record=0
	>nul 2>&1 Dir D:\VIDEO\writing* /a-d && Set /A Record=1
	If %Record% EQU 1 GoTo :Continue

	Echo shutdown.exe /r /f /T %PauseSec%

        Echo %Time% Через %PauseSec% сек. компьютер будет отключен.
	CHOICE /C YN /T %PauseSec% /D N /M "Y-Продолжить работу,  N-Продолжить выключение"
	If %ErrorLevel% EQU 1 Echo shutdown.exe /a
	If %ErrorLevel% EQU 2 GoTo :Eof

	:Continue
	Echo ------ Остальной код
pause
GoTo :Eof
Убрать для боевой работы выделенное Echo

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:17, 25-12-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 542
Благодарности: 35

Профиль | Сайт | Отправить PM | Цитировать


Использую самописанную утилиту inkeys.exe
http://forum.oszone.net/thread-273415.html

-------
консольный клиент telegram для Windows: www.elapser.info


Отправлено: 18:15, 16-01-2019 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Ожидание нажатия клавиши в течении N секунд иначе выход

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Эмулирование нажатия клавиши Jokerxman Скриптовые языки администрирования Windows 1 02-05-2015 16:00
Wireless - Маршрутизатор с функцией WISP - это вход WiFi и выход 4 LAN, или иначе? flev45 Сетевое оборудование 1 26-03-2014 17:05
Монитор - [решено] Samsung 204B - мерцание в течении 5 секунд после старта alibaster Прочее железо 2 05-04-2012 04:45
Интерфейс - [решено] неправильно обрабатываются нажатия на клавиши SWG14 Microsoft Windows 7 10 02-08-2010 14:17
Разное - [решено] Переключение нажатия клавиши? maik2 Microsoft Windows 2000/XP 4 03-12-2007 14:20




 
Переход