我们的脚本有效,但在第一次下载文件时,它会下载TMP文件,而不会转换为实际的文件名。这仅发生在第一个文件上。我觉得它与$ImageFix
有关。在添加之前没有发生过。
答案 0 :(得分:1)
并重命名所有名称为上一个图像的文件。
获得$ImageFix
后需要计算$Image
,之前没有意义。
foreach ($line in $content)
{
$tmp = [IO.Path]::GetTempFileName()
$wc.DownloadFile($line, $tmp)
$Image = if ($wc.ResponseHeaders['Content-Disposition']) {
$wc.ResponseHeaders['Content-Disposition'] -replace '^.*?filename=', ''
} else {
($line -split '/')[-1] -replace '[?*"\\]', '_'
}
$ImageFix = [uri]::UnescapeDataString($Image)
Move-Item $tmp (Join-Path $Loc $ImageFix)
LogWrite "$line,$ImageFix"
}