概要
Windows環境でバックアップを掃除するツール
バッチファイルとvbsの組み合わせでTask起動して使う想定です
使い方
CSCRIPT LogDelete.vbs D:\Folder days > backupexec.log
CSCRIPT LogDelete.vbs D:\Folder1\ 30 > bkfiledl.log
CSCRIPT LogDelete.vbs D:\Folder2\ 60 >> bkfiledl.log
コード
Option Explicit
'CScript myname.vbs %1 %2 %1=フォルダ , %2=日数
Dim DeleteLogPath ' 削除基準フォルダ
Dim DelDayCount ' 削除する判断を行う日数
Dim fso ' FileSystemObjects
Dim oTargetFolder ' Folder Objects
Dim oFile ' File Objects
'dim objRE
'Set objRE = CreateObject("VBScript.RegExp")
DeleteLogPath = Wscript.Arguments.Item(0) ' 引数としてフォルダを受け取る。ない場合には例外
DelDayCount = Wscript.Arguments.Item(1) ' 引数として、削除する過去日数を受け取る。ない場合には例外
'objRE.Pattern = "^" & Wscript.Arguments.Item(2) & "$"
'Object Create
Set fso = CreateObject("Scripting.FileSystemObject")
Set oTargetFolder = fso.GetFolder(DeleteLogPath)
WSCript.Echo (Now & " >> 指定された日以前のファイルを削除する ")
WScript.Echo ("処理対象ディレクトリ >> " & DeleteLogPath)
'File Delete
For Each oFile In oTargetFolder.Files
'If objRE.Test(oFile.Name) Then
If DateAdd("d",DelDayCount,oFile.DateLastModified) < Now Then
Wscript.Echo (oFile.Name & " **** " & oFile.DateLastModified)
oFile.Delete
End If
'End If
Next