code
# 源目录路径
$sourceDir = "D:\exe\Image\WindowImage\20240617\T3_1_NG"
# 目标目录路径
$destinationDir = "D:\exe\problem1"
# 如果目标目录不存在,则创建它
if (-not (Test-Path -Path $destinationDir)) {
New-Item -ItemType Directory -Path $destinationDir
}
# 获取源目录下的所有子目录
$subDirectories = Get-ChildItem -Path $sourceDir -Directory
# 遍历每个子目录
foreach ($subDir in $subDirectories) {
# 获取当前子目录中的所有文件
$images = Get-ChildItem -Path $subDir.FullName
# 如果子目录中有图片文件
if ($images.Count -gt 0) {
# 选择第一张图片 这里也可以选中间
$middleIndex = [math]::Floor($images.Count / 2)
$firstImage = $images[$middleIndex]
# 构建带前缀的目标文件名,前缀是子目录的名字
$prefixedFileName = "$($subDir.Name)_$($firstImage.Name)"
# 目标文件路径
$destinationPath = Join-Path -Path $destinationDir -ChildPath $prefixedFileName
# 复制图片到目标目录
Copy-Item -Path $firstImage.FullName -Destination $destinationPath -Force
}
}