必须启用日志功能并设为D:AutoSortLogs路径,否则无源可查;PowerShell提取当日MOVED记录生成CSV;再用Excel、Python或手写转HTML报表;最后通过任务计划+PowerShell脚本自动归档并邮件发送。

你需要在每天下班前快速查看今天电脑里哪些文件被自动整理过、移动到了哪个文件夹、有没有失败的文件,这份报表必须包含时间戳和操作类型,不能靠人工翻记录。
准备整理日志的输出路径
打开你使用的自动整理工具(如DropIt、Hazel或自写Python脚本),进入「日志设置」→「启用操作日志」→勾选「记录文件移动、重命名、删除动作」。
将日志保存路径设为一个固定位置,例如 【D:AutoSortLogs】,确保该文件夹存在且当前用户有写入权限;若路径含中文或空格,部分旧版工具可能写入失败。
这一步不做,后续所有报表都无源可查。
用PowerShell提取当日成功移动记录
以管理员身份运行PowerShell,执行以下命令:
Get-Content "D:AutoSortLogssort_log_$(Get-Date -Format 'yyyy-MM-dd').txt" | Where-Object { $_ -match "MOVED → " } | ForEach-Object { "$((Get-Date).ToString('HH:mm:ss')) - $_" } | Out-File "D:AutoSortReportsdaily_move_$(Get-Date -Format 'yyyy-MM-dd').csv" -Encoding UTF8
注意:命令中日期格式必须与日志文件名实际生成规则完全一致;如果日志按“20240517”格式命名,要把'yyyy-MM-dd'改成'yyyyMMdd',否则读不到文件。
生成带分类统计的HTML报表
方法一:用Excel快速转HTML
把上一步生成的CSV双击用Excel打开→选中全部数据→「插入」→「数据透视表」→行字段拖入「目标文件夹路径」,值字段拖入「计数」→复制透视表结果→新建空白HTML文件,粘贴→保存为report_20240517.html。
方法二:用Python一行命令生成(需已安装pandas)
python -c "import pandas as pd; df=pd.read_csv(r'D:\AutoSort\Reports\daily_move_20240517.csv', header=None, names=['time','log']); df['folder'] = df['log'].str.extract(r'MOVED → (.*?)(?:$|\n)'); print('
2024-05-17 自动整理报表
')" > D:AutoSortReports eport_20240517.html
方法三:纯记事本手写(适合仅需3~5条记录时)
打开记事本,输入:2024-05-17 整理汇总
→ 保存为UTF-8编码,扩展名改为.html。
自动归档并邮件发送报表
第一步:在Windows任务计划程序中新建基本任务,触发器设为「每天 17:55」。
第二步:操作设为「启动程序」,程序为powershell.exe,参数填:-ExecutionPolicy Bypass -File "D:AutoSortScriptssend_daily_report.ps1"。
第三步:在D:AutoSortScripts下新建send_daily_report.ps1,内容包含:压缩当天HTML报表→调用Outlook COM对象发送附件→将已发报表移入D:AutoSortArchive。脚本中必须包含 【if (Test-Path "D:AutoSortReports eport_$(Get-Date -Format 'yyyy-MM-dd').html")】 判断,避免空文件发送。











