Я хочу проверить файл .jpg во 2-й папке. Вторая папка имеет некоторую подпапку. если .jpg существует в подпапке 2-й папки, я скопирую файл из 1-й папки в подпапку 2-й папки на основе базового имени. Я попробовал этот код, я могу проверить существование .jpg, а затем сопоставить файл с 1-й папке. Моя проблема, я не могу скопировать, если файл .jpg больше 1, и когда я копирую файл, я не могу указать, какую подпапку мне следует скопировать.
Я пробовал это:
$JobInit = "D:\Initial"
$JobError = "D:\Process"
if (Test-Path -Path "$JobError\*\*.jpg") {
Write-Host "Error Exist"
$L_Name = "15"
$ErrorFile = Get-ChildItem -Path "$JobError\*\*.jpg" |
ForEach-Object { $_.BaseName.Substring($L_Name) }
$Path_ = Get-ChildItem -Path "$JobError\*\*.jpg"
$Split = Split-Path -Path $Path_
$NewJob = @(Get-ChildItem -Path "$JobInit\*.png" -File -Recurse |
Where-Object { "$ErrorFile" -contains $_.BaseName })
Write-Host $NewJob
$Timestamp = Get-Date -Format yyyyMMddhhmmss
$CopyJob = Copy-Item $NewJob -Destination "$Split"
$Rename = Get-ChildItem "$Split\*.png" |
Rename-Item -NewName {"$Timestamp`_" + $_.Name.Replace('.png','.gif')}
}