我在这里做错了什么(定时关机脚本)

What am I doing wrong here (Timed Shutdown script)

我以前用C#写过一个像这样的简单程序作为练习。 我现在正在做一个 .bat 脚本。 所以...我做错了什么?:

@echo off
title TimedShutdown
color 02
mode con:cols=50 lines=5
:start
cls
set "quit=a"
set /p Minutes= Minutes to shutdown? ('a'= cancel shutdown) -

if %Minutes%==%quit% (shutdown /a
pause goto start)

set "Seconds=%Minutes%*60"
shutdown /s /t %Seconds%
pause
goto Loop

:Loop
cls
set /a Seconds=%Seconds%-1
set /a Minutes=%Seconds%/60
set /a Remainder=%Seconds% %% 60
echo %Minutes%m %Remainder%s remaining...
timeout 1 >nul
goto Loop

如您所见,这不是一个非常复杂的脚本,所以我相信你们不需要解释它的作用。 它似乎工作得很好,只是关闭命令部分本身似乎不起作用。我在它之后输入了一个暂停命令,看看出了什么问题,我看到了 this. 这到底是什么意思!?

  1. 在一行命令之间使用 &pause & goto start)
  2. 添加缺失的/aset /a Seconds=%Minutes% * 60
  3. 调试批处理文件注释掉@echo off