如何设置超时提示用户是否关闭 Windows PC?
How to set timeout on prompting user for yes or no to shutdown Windows PC?
我正在尝试每天在特定时间关闭 Windows。
我正在使用任务调度程序在特定时间关闭 Windows。我正在为此使用批处理文件。
set /p a="Are you turn off computer (y/n)"
if %a%==y (shutdown.exe /s /t 00) else (echo "")
我想在其中添加一些其他功能。我已经添加了用户输入和 if else 语句,要求用户关闭 Windows 或不关闭。
现在我想添加一个命令,如果用户在一定时间内没有提供任何输入,则检查并执行关机命令,但我不知道该怎么做。
set "a="
set /p a="Are you turn off computer (y/n)"
if not defined a echo no user entry
if "%a%"=="y" (shutdown.exe /s /t 00) else (echo "")
set /p
的问题在于,如果用户没有输入,则 set
中的变量名将保持不变。因此,最初应将其设置为 nothing。
语法 SET "var=value"
(其中值可能为空)用于确保分配的值中不包含任何杂散尾随空格。
IF
语句也可以接受 /i
开关(在 NOT
之后 - 如果使用的话)使 string-comparison case-insensitive.
使用choice命令:
choice /t 10 /d y /m "Shutdown"
if errorlevel 2 (echo that's a no & goto :eof)
shutdown /s /t 0
/t 10
给出 10 秒的超时。
/d y
为默认(超时后选择)
/m "Shutdown
是提示字符串。
我正在尝试每天在特定时间关闭 Windows。
我正在使用任务调度程序在特定时间关闭 Windows。我正在为此使用批处理文件。
set /p a="Are you turn off computer (y/n)"
if %a%==y (shutdown.exe /s /t 00) else (echo "")
我想在其中添加一些其他功能。我已经添加了用户输入和 if else 语句,要求用户关闭 Windows 或不关闭。
现在我想添加一个命令,如果用户在一定时间内没有提供任何输入,则检查并执行关机命令,但我不知道该怎么做。
set "a="
set /p a="Are you turn off computer (y/n)"
if not defined a echo no user entry
if "%a%"=="y" (shutdown.exe /s /t 00) else (echo "")
set /p
的问题在于,如果用户没有输入,则 set
中的变量名将保持不变。因此,最初应将其设置为 nothing。
语法 SET "var=value"
(其中值可能为空)用于确保分配的值中不包含任何杂散尾随空格。
IF
语句也可以接受 /i
开关(在 NOT
之后 - 如果使用的话)使 string-comparison case-insensitive.
使用choice命令:
choice /t 10 /d y /m "Shutdown"
if errorlevel 2 (echo that's a no & goto :eof)
shutdown /s /t 0
/t 10
给出 10 秒的超时。
/d y
为默认(超时后选择)
/m "Shutdown
是提示字符串。