Check if the environment variables have changed since the last time when starting up and save a log 开机时检测环境变量对比上一次是否变化进行日志保存
每次开机登录时自动检测 Windows 用户 PATH 和系统 PATH 是否发生变化,仅在变化时保存完整快照备份,方便追踪和恢复。
- 下载
release\PathEnvMonitor_Setup.exe - 双击运行,选择安装目录
- 点击「安装」→ 完成
- 下次开机自动开始监控
# 右键以管理员身份运行 PowerShell,执行:
powershell -File "release\PathEnvMonitor_Setup.ps1"<安装目录>\
Save-PathEnv.ps1 # PATH 监控核心脚本
Setup-PathMonitorTask.ps1 # 计划任务注册脚本
Uninstall-PathMonitor.ps1 # 卸载脚本
PATH监控工具_说明书.txt # 详细中文使用说明书
path_backups\ # 备份目录
latest.hash # SHA-256 哈希值
log.txt # 运行日志
PATH_backup_YYYYMMDD_HHMMSS.txt # PATH 快照备份
- 用户登录 Windows → 计划任务延迟 30 秒触发
Save-PathEnv.ps1 - 从注册表读取用户 PATH 和系统 PATH 的原始值
- 计算 SHA-256 哈希,与
latest.hash比对 - 哈希不同 → PATH 已变化,保存完整快照到
path_backups\ - 哈希相同 → 跳过备份,仅记录日志
- 自动清理 90 天前的旧备份
# 手动运行一次检测
powershell -File "<安装目录>\Save-PathEnv.ps1"
# 查看计划任务
Get-ScheduledTask -TaskName "PathEnvMonitor"
# 禁用监控
Disable-ScheduledTask -TaskName "PathEnvMonitor"
# 启用监控
Enable-ScheduledTask -TaskName "PathEnvMonitor"
# 卸载
powershell -File "<安装目录>\Uninstall-PathMonitor.ps1"# 仅生成合并后的 PS1 脚本
powershell -File Build-Installer.ps1 -ScriptOnly
# 完整构建(生成 EXE,需要 .NET Framework SDK)
powershell -File Build-Installer.ps1构建需要 csc.exe(.NET Framework 4.x 自带,位于 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\)。
| 文件 | 说明 |
|---|---|
Save-PathEnv.ps1 |
核心监控脚本(支持安装目录参数) |
Setup-PathMonitorTask.ps1 |
计划任务注册脚本 |
Installer-GUI.ps1 |
图形化安装程序模板 |
Build-Installer.ps1 |
构建脚本(生成 EXE) |
Uninstall-PathMonitor.ps1 |
卸载脚本 |
release\ |
构建输出目录 |
path_backups\ |
开发环境备份目录 |
- 安装需要管理员权限(用于注册计划任务)
- 建议安装到本地固定磁盘,不要安装到网络驱动器或 U 盘
- 脚本仅读取和备份环境变量,不会修改系统配置
- 备份文件为 UTF-8 纯文本,可用记事本查看