古いファイルをサーバーにアーカイブしようとしています(古いものから90日後)、毎月別々のZIPファイルにする必要があります。私はpowershell-v1.0を持っていますので、私は使用できませんSystem.Management.Automation.PSObject
アーカイブファイルに関する問題
私はスクリプトを作成しましたが、zipファイル名に問題があります。スクリプトを実行すると、すべてのファイルが名前+++
という1つのアーカイブに移動しています。
$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
}}
私が間違っていることを誰かが理解できればいいと思います。