移动使用昨天时间戳创建的所有文件-POWERSHELL

移动使用昨天时间戳创建的所有文件-POWERSHELL,powershell,move,Powershell,Move,我正在尝试移动今天-昨天1天创建的所有文件。我不知道出了什么问题,因为当我将$which_day设置为-1时,我得到了“未找到任何文件”,但当我将$更改为0时,所有文件都被移动 标准杆数 $which_day=-1 $filter=*.* $path=E:\log\u测试 $path\u destination=E:\昨天\u日志 $save_log=1 $path\u log\u folder=E:\昨天\u日志 $logname=$path\u log\u folder\MOVED\u FI

我正在尝试移动今天-昨天1天创建的所有文件。我不知道出了什么问题,因为当我将$which_day设置为-1时,我得到了“未找到任何文件”,但当我将$更改为0时,所有文件都被移动

标准杆数 $which_day=-1 $filter=*.* $path=E:\log\u测试 $path\u destination=E:\昨天\u日志 $save_log=1 $path\u log\u folder=E:\昨天\u日志 $logname=$path\u log\u folder\MOVED\u FILEsLog\u$get date-格式为yyyy-MM-dd\u HHmmss.txt $limit\u from=获取日期获取日期-格式d.AddDays$which\u day $limit\u to=获取日期获取日期-格式d.AddDays$哪天+1 $files_to_copy=Get ChildItem-Path$Path-include$filter-Recurse |其中{$\.CreationTime-ge$limit_from-和$\.CreationTime-lt$limit_to} $files_to_copy |选择名称、目录、LastWriteTime 将主机$files\u写入到\u copy.Count文件已找到 $ID=1 $OK=0 $NOK=0 Foreach$file\u to\u复制$files\u to\u复制{ $file\u path=$file\u to\u copy.FullName $file\u path=$file\u path。替换$path, $destination\u file\u path=$path\u destination+$file\u path $destination\u file\u path=$destination\u file\u path。将$file\u替换为\u copy.Name, $destination\u file\u path=$destination\u file\u path.Substring0,$destination\u file\u path.Length-1 $destination\u file\u路径 if!Test Path-Path$destination\u file\u Path{New Item$destination\u file\u Path-Type Directory} 移动项目-路径$file\u到\u复制-目标$Destination\u文件\u路径-强制 如果测试路径$file\u到\u,请检查是否已移动 { $NOK++ $ID警告:文件$File_to_copy NOT MOVED | Out File-FilePath$logname-Append } 否则{ $OK++ $ID INFO:File$File_to_copy已移动到$destination_File_path | Out File-FilePath$logname-Append } $ID++ } $Quantity=$files\u to\u copy.Count 如果$save_log=1 { ***************************************|输出文件-文件路径$logname-追加摘要 $Quantity files已找到| Out File-FilePath$logname-追加所有文件 $OK files OK MOVED | Out File-FilePath$logname-追加移动的文件 $NOK files NOT MOVED | Out File-文件路径$logname-追加未移动的文件 } 更新

PS E:\>\昨天 找到0个文件 输出文件:找不到路径“E:\昨天\u log\MOVED\u FILEsLog\u 2015-04-22\u 020130.txt”的一部分。 在E:\昨天。ps1:46字符:49 +***************************************************输出文件-文件路径$logname-应用程序。。。 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +CategoryInfo:OpenError::[Out File],DirectoryNotFoundException +FullyQualifiedErrorId:FileOpenFailure,Microsoft.PowerShell.Commands.OutFileCommand 输出文件:找不到路径“E:\昨天\u log\MOVED\u FILEsLog\u 2015-04-22\u 020130.txt”的一部分。 在E:\昨天。ps1:47字符:36 +$Quantity files已找到| Out File-FilePath$logname-追加所有文件。。。 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +CategoryInfo:OpenError::[Out File],DirectoryNotFoundException +FullyQualifiedErrorId:FileOpenFailure,Microsoft.PowerShell.Commands.OutFileCommand 输出文件:找不到路径“E:\昨天\u log\MOVED\u FILEsLog\u 2015-04-22\u 020130.txt”的一部分。 在E:\昨天。ps1:48字符:28 +$OK files OK MOVED | Out File-FilePath$logname-追加移动的文件 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +CategoryInfo:OpenError::[Out File],DirectoryNotFoundException +FullyQualifiedErrorId:FileOpenFailure,Microsoft.PowerShell.Commands.OutFileCommand 输出文件:找不到路径“E:\昨天\u log\MOVED\u FILEsLog\u 2015-04-22\u 020130.txt”的一部分。 在E:\昨天。ps1:49字符:30 +$NOK files NOT MOVED | Out File-文件路径$logname-追加未移动的文件 + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +CategoryInfo:OpenError::[Out File],DirectoryNotFoundException +FullyQualifiedErrorId:FileOpenFailure,Microsoft.PowerShell.Commands.OutFileCommand PS E:\>cd。\log\u测试 PS E:\log\u test>dir 目录:E:\log\u test
我无法复制这个问题。我运行了您的脚本修改路径,但仅此而已,它复制了我昨天在该路径中创建的一个文件。我几乎想回答只是为了指出你可以在代码中做得更好的事情…所以在你移动它之前,我在你的回答中看到了两个文件,其中一个是今天的最后写入时间,另一个是昨天的。。。但这不是您的脚本所要查找的,它查看CreationTime属性。这些文件的创建时间是多少?运行:GCI E:\log_test\*| FT Name、CreationTime、LastWriteTime并用这些信息更新您的问题。我建议使用机器人复制。