计划任务定时重启远程服务或重启机器
原创可以添加一个每隔一段时间就重启远程服务的计划任务,一句命令搞定计划任务添加
例如
①每天2点触发后、每隔120分钟(2小时)重启一次远程服务
schtasks.exe /CREATE /ru system /rl highest /SC DAILY /MO 1 /TN restart_rdp_service /TR "powershell.exe -c '& {restart-service termservice -force}'" /ST 02:00 /RI 120 /DU 24:00 /f
②每天2点触发后、每隔1439分钟(23小时59分)重启一次远程服务
schtasks.exe /CREATE /ru system /rl highest /SC DAILY /MO 1 /TN restart_rdp_service /TR "powershell.exe -c '& {restart-service termservice -force}'" /ST 02:00 /RI 1439 /DU 24:00 /f
如果重启机器,建议设置凌晨定时重启,例如:
①每天2点触发后、每隔1439分钟(23小时59分)重启一次机器
schtasks.exe /CREATE /ru system /rl highest /SC DAILY /MO 1 /TN restart_computer /TR "shutdown -r -t 0" /ST 02:00 /RI 1439 /DU 24:00 /f
每天凌晨业务低峰期,计划任务定时重启机器,这个办法特别适合这种场景:机器重启后不到2天,CPU、内存利用率逐渐跑到百分之八九十甚至跑满,业务方不太好定位程序占用资源不断升高的原因,跑满时机器hang死,重启后恢复正常。
如果有条件,建议最好是把命令整到一个.ps文件,毕竟能一句话解决的场景比较少,有时候需要多条命令,此时就得执行powershell文件而不是一条命令,例如
创建计划任务获取进程列表并打印CPU利用率每10分钟执行一次
创建计划任务:
schtasks.exe /CREATE /ru system /rl highest /SC DAILY /MO 1 /TN getprocess /TR "powershell.exe -ExecutionPolicy Unrestricted -windowstyle hidden -File c:\get_process.ps1" /ST 02:00 /RI 10 /DU 24:00 /f
把下面2句写到c:\get_process.ps1,计划任务调用它
Get-Date -Format 'yyyy-MM-dd HH:mm:ss:fffffff' >> E:\process.log
get-process |sort-object cpu -descending |select-object -first 25|format-table processname,cpu|Out-String >> E:\process.log
再比如创建计划任务每分钟ping百度3下
schtasks.exe /CREATE /ru system /rl highest /SC DAILY /MO 1 /TN pingbaidu /TR "cmd.exe /c start /min d:\pingbaidu.bat" /ST 02:00 /RI 1 /DU 24:00 /f
把下面几句写到d:\pingbaidu.bat,计划任务调用它
time /t >> D:\pingbaidu.txt
ping www.baidu.com -n 3 >> D:\pingbaidu.txt
echo. >> d:\pingbaidu.txt
exit 0
以上部分提取自如下文档
https://cloud.tencent.com/developer/article/1929202
https://cloud.tencent.com/developer/article/1933166
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。