现有存档未被删除

时间:2017-05-30 23:47:25

标签: powershell

我的脚本重新运行时,我必须删除现有的存档zip文件夹。但事实并非如此。我相信这是因为我正在附上时间戳。

我想删除现有的归档文件夹而不考虑时间戳。每当我再次运行时,存档的zip文件都会被删除。

我使用以下代码:

$source= Get-ChildItem -Path $outputReportFolder "*ABC*?" -Directory
Add-Type -assembly "system.io.compression.filesystem"
Foreach ($s in $source)
{
    $destination = Join-path -path $outputReportFolder -ChildPath "$($s.name)$TimeStamp.zip"
    If(Test-path $destination) {Remove-item $destination}
    [io.compression.zipfile]::CreateFromDirectory($s.fullname, $destination)
} 

1 个答案:

答案 0 :(得分:0)

如果每次调用脚本时$TimeStamp都不同,那么您的代码将无法找到旧文件(使用不同的$TimeStamp值创建),您可能需要类似

的内容
Remove-Item "$outputReportFolder\$($s.name)*.zip"

而不是

If(Test-path $destination) {Remove-item $destination}

请记住,它会删除与掩码匹配的所有zip文件。