我的脚本重新运行时,我必须删除现有的存档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)
}
答案 0 :(得分:0)
如果每次调用脚本时$TimeStamp
都不同,那么您的代码将无法找到旧文件(使用不同的$TimeStamp
值创建),您可能需要类似
Remove-Item "$outputReportFolder\$($s.name)*.zip"
而不是
If(Test-path $destination) {Remove-item $destination}
请记住,它会删除与掩码匹配的所有zip文件。