我试图根据修改日期将PST文件的负载组织到子文件夹中。
例如,我想将日期修改为“ 24/09/2019”的PST文件移动到新创建的名为“ 24/09/2019”的文件夹中-该文件夹的名称基于修改日期。
我设法基于一个文件创建了一个带日期的文件夹,但是将文件移到该文件夹中并在多个文件上完成此过程不起作用。
$LastModifiedDate = Get-ChildItem "C:\users\user\Desktop\Test\"
$LastModified = $LastModifiedDate.LastWriteTime.ToString("dd-MM-yyyy")
$LastModifiedDate | ForEach-Object {
New-Item -ItemType directory -Path "C:\users\user\desktop\Test\" -Name $LastModified
Move-Item $LastModifiedDate -Path "C:\users\user\desktop\test\$LastModified"
}
echo $LastModifiedDate
echo $LastModified
答案 0 :(得分:0)
假设您所有的PST文件都位于您指定的路径中,则可以使用以下方式:
$BasePath = 'C:\users\user\Desktop\Test'
Get-ChildItem -Path $BasePath -Filter *.pst |
ForEach-Object {
$Date = Get-Date $_.LastWriteTime -Format 'yyyyMMdd'
$TargetPath = Join-Path -Path $BasePath -ChildPath $Date
If (-not (Test-Path -Path $TargetPath)) {
New-Item -Path $TargetPath -ItemType Directory -Force
}
Move-Item -Path $_.FullName -Destination $TargetPath
}