首先要安裝7-Zip到c:\Program Files\7-Zip;
示例如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<code>#define Function DeleteLog</code>
<code>function</code> <code>DeleteLog{ </code>
<code> </code><code>param</code><code>(</code><code>$filePath</code><code>,</code><code>$TimeOutDays</code><code>) </code>
<code> </code><code>$allFiles</code><code>=</code><code>get-childitem</code> <code>-path </code><code>$filePath</code>
<code> </code><code>foreach</code> <code>(</code><code>$files</code> <code>in</code> <code>$allFiles</code><code>){ </code>
<code> </code><code>$daypan</code><code>=((</code><code>get-date</code><code>)-</code><code>$files</code><code>.lastwritetime).days </code>
<code> </code><code>if</code> <code>(</code><code>$daypan</code> <code>-gt</code> <code>$TimeOutDays</code><code>){ </code>
<code> </code><code>remove-item</code> <code>$files</code><code>.fullname -Recurse -force </code>
<code> </code><code>} </code>
<code> </code><code>}</code>
<code>}</code>
<code>#define some vars</code>
<code>cd </code><code>"C:\Program Files\7-Zip"</code>
<code>$stringDate</code><code>=</code><code>get-date</code> <code>-UFormat </code><code>"%Y%m%d"</code>
<code>$fileName</code><code>=</code><code>"${stringDate}log"</code>
<code>#Compress Log and (Delete Log before one month)</code>
<code>$SoucePath</code><code>=</code><code>"C:\windows-services\log"</code>
<code>cmd /c </code><code>"7z.exe a -t7z D:\logs\$fileName $SoucePath\*"</code>
<code>$filePath</code><code>=</code><code>$SoucePath</code>
<code>$TimeOutDays</code><code>=30</code>
<code>DeleteLog -filePath </code><code>$filePath</code> <code>-TimeOutDays </code><code>$TimeOutDays</code>
<code>#Delete Backup log before two months</code>
<code>$Floders</code><code>=</code><code>Get-ChildItem</code> <code>d:\logs</code>
<code>foreach</code> <code>(</code><code>$Floder</code> <code>in</code> <code>$Floders</code><code>){ </code>
<code> </code><code>$Floder</code><code>.lastwritetime = </code><code>Get-Date</code>
<code>$filePath</code><code>=</code><code>"D:\logs"</code>
<code>$TimeOutDays</code><code>=60</code>
本文轉自 bannerpei 51CTO部落格,原文連結:http://blog.51cto.com/281816327/1609728,如需轉載請自行聯系原作者