我正在尝试创建一个批处理文件,以便从Surface Pro 3上的任务栏关闭我的计算机,我已经在台式计算机上成功完成了(两个都运行Windows 8.1),但在我的Surface上这个批处理文件:
$(document).ready( function(){
var $div
for(var i = 0; i < 30 ; i++){
$div = $("<div>", {class: "a lime" })
$(".container").append($div)
}
console.log($(".a").eq(1))
var random
setInterval(function(){
for(var i = 0; i < $(".a").length && (i % 4 == 0); i ++){
random = Math.floor(Math.random() * $(".a").length)
var saved = random;
// if(i % 2 == ){
if($(".a").eq(saved).hasClass("lime")){
//!!!make it so that after changing to yellow so that it changes to green.
lime class is green!!!
$(".a").eq(saved).removeClass("lime").addClass("yellow")
}else if ($(".a").eq(saved).hasClass("yellow")){
$(".a").eq(saved).removeClass("yellow").addClass("lime")
}
// $(".a").eq(saved).toggleClass("yellow")
// $(".a").eq(saved).toggleClass("lime")
// }
}
}, 1000)
});
导致错误&#34;此时意外关机。&#34;包含它的命令窗口立即崩溃。这个准确的(编辑:措辞不当,实际上并不精确)批处理文件在我的桌面上按预期工作。我的Surface上的批处理文件只包含代码:
@echo off
SET /p var1 = "Shutdown? (Y/N) "
if /I %var1% == "Y" shutdown /s /t 0
工作正常,这对我来说非常令人费解。我没有从我的搜索中找到任何解决方案,所以任何帮助都将不胜感激!
答案 0 :(得分:0)
@echo off
SET /p var1="Shutdown? (Y/N) "
if /I "%var1%" == "Y" shutdown /s /t 0
此版本有效,所有需要修复的内容都是=
周围的空格和%var1
周围的引号。感谢SomethingDark的回答。
答案 1 :(得分:0)
为什么不使用Powershell的Stop-Computer
cmdlet?该cmdlet在Powershell 4.0中可用。
-Edit添加一个例子。感谢this question获取是/否确认码,确认在Powershell v4中工作。
$message = 'Shutdown Computer?'
$question = 'Are you sure you want to Shutdown?'
$choices = New-Object Collections.ObjectModel.Collection[Management.Automation.Host.ChoiceDescription]
$choices.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList '&Yes'))
$choices.Add((New-Object Management.Automation.Host.ChoiceDescription -ArgumentList '&No'))
$decision = $Host.UI.PromptForChoice($message, $question, $choices, 1)
if ($decision -eq 0) {
Stop-Computer -force
} else {
"Shutdown aborted."
}