You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell脚本筛选1分钟内含.doc_文件却误移多天前文件问题咨询

问题根因排查

你的脚本存在3处核心错误,其中时间筛选逻辑完全写反是导致老文件被误移动的直接原因:

  • 时间比较运算符错误:你需要筛选「1分钟内修改/创建的文件」,对应时间应该是大于等于当前时间减1分钟,但你写的是-lt (Get-Date).AddMinutes(-1),含义是「修改时间早于1分钟前的所有文件」,自然会把几天前的老文件也筛选出来。
  • 冗余无效的时间条件:$_.LastWriteTime -lt (Get-date).AddDays(-0)完全没有实际作用,所有文件的修改时间都必然早于当前时间,该条件不会过滤任何文件,反而会干扰逻辑判断。
  • 匹配规则存在隐患:-match ".doc_"中的.在正则语法里代表匹配任意字符,如果你需要严格匹配文件名包含字面量.doc_,要么改为通配符匹配$_.Name -like "*.doc_*",要么转义正则中的点$_.Name -match "\.doc_"。
  • 额外注意:你需求描述里要求按「创建时间」筛选,但脚本里用的是LastWriteTime(最后修改时间),如果确实需要按创建时间过滤,需要替换为$_.CreationTime。
修正后的脚本
# 按创建时间筛选、匹配字面量.doc_、1分钟内生成的文件
Get-ChildItem -Path "C:\Users\Administrator\Desktop\Test\Test2" | Where-Object {
    $_.Name -like "*.doc_*" -and 
    $_.CreationTime -ge (Get-Date).AddMinutes(-1)
} | Move-Item -Destination "C:\Users\Administrator\Desktop\Test"

内容的提问来源于stack exchange,提问作者Eagleye2018

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 01:45:03