将文件移动到Powershell中子文件夹中的存档文件夹 - 将变量添加到目标

时间:2018-02-21 21:10:35

标签: powershell get-childitem

请原谅我成为Powershell的新人,但我希望社区可以提供帮助。 我需要将特定年龄的文件移动到存档子文件夹,但我需要能够创建一个脚本来处理具有多个目标的多个文件夹。以下是我正在使用的powershell脚本。

get-childitem -Path "c:\source" -recurse |
  where-object {$_.LastWriteTime -lt (get-date).AddDays(-31)} | 
  move-item -destination "c:\source\[subfolder]\archive"

因此c:\ source中有很多子文件夹。所有子文件夹都有一个名为" archive。"的文件夹。我希望能够将目的地设置为源子文件夹" s" archive"夹: C:\源\%变量%\档案

我错过了什么?

由于

1 个答案:

答案 0 :(得分:0)

$children = get-childitem -Path "c:\source" |
  where-object {$_.LastWriteTime -lt (get-date).AddDays(-31) -and $_.PSIsContainer -eq $True}

foreach($child in $children)
{
     $childArchivePath = $child.FullName + "\archive"
     Move-Item $child -Destination $childArchivePath
}

没有可以使用的数据集,但您可以将其放入ISE并逐步调试,以便修补。

希望有所帮助!