winServer定时重启服务

方案一:PowerShell 脚本(推荐)

1. 创建重启服务脚本 RestartWcs.ps1

# 停止wcsServer服务
Stop-Service -Name wcsServer -Force
Start-Sleep -Seconds 3

# 启动wcsServer服务
Start-Service -Name wcsServer

# 记录运行日志
$logPath = "C:\wcsServiceRestart.log"
$now = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
Add-Content -Path $logPath -Value "[$now] 执行重启wcsServer服务完成"

2. 设置Windows任务计划程序,每日0点自动执行

  1. 打开任务计划程序taskschd.msc
  2. 右侧「创建基本任务」
  3. 名称:每日重启wcsServer,下一步
  4. 触发器选择「每日」,下一步,开始时间设为 00:00:00
  5. 操作选择「启动程序」
  6. 程序/脚本填入:
powershell.exe

添加参数:

-ExecutionPolicy Bypass -File "C:\RestartWcs.ps1"
  1. 下一步完成;右键任务→属性
    • 勾选「使用最高权限运行」(必须,否则无权限启停服务)
    • 条件页可取消唤醒相关,设置电源选项忽略睡眠

方案二:批处理 bat 脚本(兼容旧系统)

1. RestartWcs.bat

@echo off
echo %date% %time% 开始重启wcsServer >> C:\wcsServiceRestart.log
net stop wcsServer
timeout /t 3 /nobreak
net start wcsServer
echo %date% %time% 重启完成 >> C:\wcsServiceRestart.log

任务计划启动程序直接填这个bat文件即可,同样勾选最高权限。

命令行快速创建定时任务(一键注册,管理员CMD运行)

以管理员身份打开CMD,直接复制执行:

schtasks /create /tn "每日重启wcsServer服务" /tr "powershell -ExecutionPolicy Bypass -File C:\RestartWcs.ps1" /sc daily /st 00:00 /ru Administrator /rl highest

参数说明:

  • /sc daily:每日执行
  • /st 00:00:凌晨零点
  • /rl highest:最高管理员权限

关键注意点

  1. 权限:启停系统服务必须管理员权限,任务务必开启最高权限运行
  2. 执行策略:-ExecutionPolicy Bypass 绕过默认限制,避免脚本被拦截
  3. 日志文件路径自行修改,确保盘符存在
  4. 若服务名带空格,脚本里服务名加双引号 "wcsServer"
  5. 测试:手动右键运行脚本,确认能正常启停服务,再启用定时任务
posted @ 2026-06-15 19:54  柴油飞机  阅读(0)  评论(0)    收藏  举报