我想存档服务器中的旧文件(大于90天),它应该是每个月单独的ZIP文件。我有powershell-v1.0所以我不能使用System.Management.Automation.PSObject
存档文件问题
我已经创建了一个脚本,但我有一个zip文件名的问题。当我运行脚本时,所有文件都将移至名为+++
的一个存档。
$folders ="C:\New folder\test\"
Function Zip
{
Param
(
[string]$zipFile
,
[string[]]$toBeZipped
)
$CurDir = Get-Location
Set-Location "C:\program files\7-zip\"
.\7z.exe A -tzip $zipFile $toBeZipped | Out-Null
Set-Location $CurDir
}
$files = Get-ChildItem -Path $folders | Where-Object {$_.LastwriteTime -lt ((Get-date).adddays(-90))} | % { $_.FullName};
if (!$files)
{break}
else
{
Write-Host $files
$file_year = $files.LastwriteTime.Year
$file_month = $files.LastwriteTime.Month
echo $file_month
ZIP $folders+"$file_year"+"$file_month"+".zip" $files
If(Test-Path $folders+$file_year+$file_month+.zip)
{
Remove-Item $files
}}
这将是很好,如果有人可以弄清楚我做错了什么。