Я в основном пытаюсь выполнить некоторую базовую операцию удаления журнала несколькими шагами.
первого - получить все файлы, которые старше Х дней (7 в моем случае)
второй - Zip их в другое место
3-й - удалить заархивированные файлы
четвёртым - переходящие в папке молний журналов и удалить старше 30 дней
Как zip/7zip/или любой другой сжать список файлов
первого - завершен - я получаю список файлов
третьей - не проблема - я думаю
4-й - такое же, как 1 ...
2 ой ... вот я стараюсь использовать 7zip, как он уже встроен в Windows, мы имеем строгую политику пересортицы 3 инструменты сторонних так WinRar не вариант
это код, который я пытался, но я не получить какие-либо результаты он не по команде почтовый
if ((Test-Path "$env:ProgramFiles\7-Zip\7z.exe") -eq $true){Set-Alias sz "$env:ProgramFiles\7-Zip\7z.exe" }
$DateStr = (Get-Date).ToString("dd-MM-yyyy")
$arcPath = "D:\SDDP\LOG_Archive_$DateStr.zip"
$limit = (Get-Date).AddDays(-7)
$path = "D:\SDDP\LOG"
$filesToBackUP = Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt $limit }
ForEach ($file in $filesToBackUP)
{
sz a -tzip $archPath $file.FullName
}
ошибка, я получаю:
Open archive: D:\SDDP\LOG\DISTRIBUTOR(232)\04-09-2015\SDDP_DISTRIBUTOR(232)_04-09-2015_1.csv
sz : ERROR: D:\SDDP\LOG\DISTRIBUTOR(232)\04-09-2015\SDDP_DISTRIBUTOR(232)_04-09-2015_1.csv
At line:13 char:9
+ sz a -tzip $archPath $file.FullName
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (ERROR: D:\SDDP\...4-09-2015_1.csv:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
D:\SDDP\LOG\DISTRIBUTOR(232)\04-09-2015\SDDP_DISTRIBUTOR(232)_04-09-2015_1.csv
Open ERROR: Can not open the file as [zip] archive
ERRORS:
Is not archive
System ERROR:
Incorrect function.
Ссылка на команду зип я взял из here
, поскольку я прочитал ссылку на добавление, нет ничего о создании нового файла 7zip для добавления файлов, поэтому я предполагаю, что он создается автоматически, но не настолько уверен в этом.
Прошу совета.
Спасибо.
Hi, это отлично работает! кажется, что мне просто нужно было добавить два параметра «-y» и «-r» странно, что они не зарегистрированы там! –