如何编写PowerShell脚本移动超过5天的旧文件并排除5天文件?
PowerShell脚本:移动创建/修改时间超过5天的文件
核心逻辑
要实现仅移动**创建或修改时间超过5天(排除刚好5天)**的文件,关键是先计算时间阈值,再筛选出早于该阈值的文件,最后执行移动操作。
完整脚本示例
# 配置源路径与目标路径 $sourcePath = "C:\Your\Source\Folder" $destinationPath = "C:\Your\Target\Folder" # 计算时间阈值:当前时间往前推5天,仅处理早于该时间的文件 $threshold = (Get-Date).AddDays(-5) # 自动创建目标目录(如果不存在) if (-not (Test-Path -Path $destinationPath)) { New-Item -ItemType Directory -Path $destinationPath | Out-Null } # 获取符合条件的文件并移动 # 移除 -WhatIf 参数即可执行实际移动操作 Get-ChildItem -Path $sourcePath -File -Recurse | Where-Object { $_.CreationTime -lt $threshold -or $_.LastWriteTime -lt $threshold } | Move-Item -Destination $destinationPath -WhatIf
关键参数说明
-File:仅筛选文件,排除目录-Recurse:可选参数,若需要遍历源目录下的所有子文件夹则保留,否则删除-WhatIf:测试模式,仅输出将要移动的文件列表,不会实际执行移动。确认结果符合预期后再删除该参数- 筛选条件:
-lt $threshold表示文件时间早于5天前的此刻,刚好5天的文件会被排除,符合需求
内容的提问来源于stack exchange,提问作者user20508296
相关产品推荐
相关产品推荐

