【发布时间】:2015-08-12 13:40:38
【问题描述】:
我正在尝试创建一个批处理文件以从我的 Surface Pro 3 上的任务栏关闭我的计算机,我已在我的台式计算机(均运行 Windows 8.1)上成功完成此操作,但在我的 Surface 上此批处理文件:
@echo off
SET /p var1 = "Shutdown? (Y/N) "
if /I %var1% == "Y" shutdown /s /t 0
导致错误“此时意外关闭”。以及包含它的命令窗口立即崩溃。这个确切的(编辑:措辞选择不当,实际上并不准确)批处理文件在我的桌面上按预期工作。我的 Surface 上的批处理文件仅包含代码:
shutdown /s /t 0
工作正常,这让我很困惑。我没有从我的搜索中找到任何解决方案,所以任何帮助将不胜感激!
【问题讨论】:
-
该代码可以在您的桌面上运行吗?它不应该;您在
if语句中缺少%var%周围的引号,并且您的set命令不应在=周围有空格。 -
另外,
choice在这种情况下会比set /p更好。 -
引号和空格修复了它,我重新检查了我的桌面版本,一开始是正确的。我不应该把它称为完全相同的批处理文件,因为我没有从我的桌面复制/粘贴到我的表面。感谢SomethingDark的帮助