如何用无弹窗隐藏式PowerShell/CMD实现20-24小时随机关机
20-24小时随机无提示自动关机脚本(隐藏窗口运行)
PowerShell 实现方案
直接通过PowerShell生成随机延迟时间,执行无提示关机,同时保证窗口隐藏:
可直接运行的命令(或保存为 .cmd/.bat 文件)
start /min powershell.exe -WindowStyle Hidden -Command "$randomDelay = Get-Random -Minimum (20*3600) -Maximum (24*3600); Start-Sleep -Seconds $randomDelay; shutdown /s /t 0 /f"
参数说明:
Get-Random -Minimum (20*3600) -Maximum (24*3600):生成20小时(72000秒)到24小时(86400秒)之间的随机秒数Start-Sleep -Seconds $randomDelay:等待随机生成的时长shutdown /s /t 0 /f:立即强制关机(若需重启替换为/r),/f强制关闭所有程序,无提示弹窗start /min+-WindowStyle Hidden:双重确保运行时无窗口显示
纯CMD 实现方案(依赖PowerShell生成随机数)
如果偏好纯CMD脚本,可通过调用PowerShell获取随机延迟值:
@echo off for /f %%a in ('powershell -Command "Get-Random -Minimum 72000 -Maximum 86400"') do set "delay=%%a" start /min powershell.exe -WindowStyle Hidden -Command "Start-Sleep -Seconds %delay%; shutdown /s /t 0 /f"
原方法问题说明
你之前的两种脚本都是固定延迟86400秒(24小时),没有实现20-24小时范围内的随机时长,因此无法满足需求。
内容的提问来源于stack exchange,提问作者hackuniverse
相关产品推荐
相关产品推荐

