82eeee50f13cf0483f69ac4d2dd8c17eca81fd53
智能网络监控脚本 - 系统部署版
📁 文件结构
smart_shutdown/
├── smart_shutdown.ps1 # 原始监控脚本(用户模式)
├── deploy_system.ps1 # 系统级部署脚本
├── uninstall_system.ps1 # 系统级卸载脚本
├── TEST_REPORT.md # 测试报告
├── README.md # 本文件
└── logs/ # 本地测试日志目录
└── network_monitor_20250606.log
🚀 快速部署
系统级部署(推荐)
# 以管理员身份运行
.\deploy_system.ps1
部署效果:
- 程序部署到:
C:\Program Files\SmartNetworkMonitor\ - 配置和日志:
C:\ProgramData\SmartNetworkMonitor\ - 开机自启动,无需用户登录
- 以 SYSTEM 权限运行
用户级运行
# 以管理员身份运行(需要用户登录)
.\smart_shutdown.ps1
🎯 系统部署后的文件位置
程序文件位置
C:\Program Files\SmartNetworkMonitor\
├── smart_shutdown_system.ps1 # 系统优化版监控脚本
└── manage.ps1 # 管理工具脚本
数据文件位置
C:\ProgramData\SmartNetworkMonitor\
├── config.json # 配置文件
└── logs\ # 系统日志目录
└── network_monitor_YYYYMMDD.log
🔧 管理命令
查看任务状态
Get-ScheduledTask -TaskName "Smart Network Shutdown Monitor"
启动/停止监控
Start-ScheduledTask -TaskName "Smart Network Shutdown Monitor"
Stop-ScheduledTask -TaskName "Smart Network Shutdown Monitor"
查看日志
# 查看今天的日志
Get-Content "C:\ProgramData\SmartNetworkMonitor\logs\network_monitor_$(Get-Date -Format 'yyyyMMdd').log"
# 实时监控日志
Get-Content "C:\ProgramData\SmartNetworkMonitor\logs\network_monitor_$(Get-Date -Format 'yyyyMMdd').log" -Wait
查看系统事件日志
Get-EventLog -LogName Application -Source SmartNetworkMonitor -Newest 20
⚙️ 配置说明
系统部署后,配置文件位于:C:\ProgramData\SmartNetworkMonitor\config.json
默认配置:
{
"TargetIP": "192.168.3.3",
"MonitorWindowSeconds": 180,
"ShutdownCountdown": 60,
"NormalPingInterval": 15
}
修改配置文件后,重启监控任务使配置生效:
Stop-ScheduledTask -TaskName "Smart Network Shutdown Monitor"
Start-ScheduledTask -TaskName "Smart Network Shutdown Monitor"
🗑️ 卸载
# 以管理员身份运行
.\uninstall_system.ps1
📊 特性
- ✅ 开机自启动,无需用户登录
- ✅ 系统级权限运行
- ✅ 智能日志管理
- ✅ 配置文件支持
- ✅ 事件日志备份
- ✅ 自动日志清理(30天)
- ✅ 网络恢复自动取消关机
- ✅ 完整的错误处理
🔐 安全说明
- 脚本以 SYSTEM 权限运行,具有执行关机的完整权限
- 所有操作都会记录在日志和系统事件日志中
- 支持通过任务计划程序进行管理和监控
Languages
Go
94.1%
PowerShell
3.4%
Shell
2.5%