Top/VBS関連情報

VBS関連情報 のバックアップソース(No.1)

VBSを使って作成日付が古いファイルを削除する方法


指定されたフォルダ以下にある、フォルダやファイルの作成日を見て、規定の日付より古いモノを削除するvbsです。

 '-----------------------------------
 ' オブジェクト定義
 '-----------------------------------
 dim arg
 dim fso
 dim subf
 '
 dim FileName   ' ファイル名
 dim FolderName ' フォルダ名
 dim ArgDam     ' 遡り日数
 dim OldDate    ' 遡り日
 dim FDate      ' ファイルないしフォルダの作成日
 
 Set arg = WScript.Arguments
 Set fso = CreateObject("Scripting.FileSystemObject")
 
 
 '-----------------------------------
 ' 引数の取得
 '-----------------------------------
 if arg.Count < 2 then
     ' 引数2が取得できない場合は7をセット
     ArgDam = 7
 else
     ArgDam = arg(1)
 end if
 
 ' 引数に指定されたフォルダの情報を取得
 Set subf = fso.GetFolder(arg(0))
 
 
 '-----------------------------------
 ' 直下の各ファイル確認処理
 '-----------------------------------
 For Each FileName In subf.Files
 
     ' ファイル名の取得
     fdate = FileName.DateCreated
 
     ' 温存と削除判定
     if DateDiff("d", fdate, date) >= argdam then
         ' ファイル削除
         fso.DeleteFile FileName
     end if
 Next
 
 
 '-----------------------------------
 ' 直下の各フォルダ確認処理
 '-----------------------------------
 For Each FolderName In subf.Subfolders
 
     ' フォルダ名の取得
     fdate = FolderName.DateCreated
 
     ' 温存と削除判定
     if DateDiff("d", fdate, date) >= argdam then
         ' フォルダ削除
         fso.DeleteFolder FolderName
     end if
 Next
 
 
 '-----------------------------------
 ' オブジェクト開放
 '-----------------------------------
 set fso = Nothing


引数1はフォルダ名、引数2は遡り日になります。
引数2は省略が可能で、省略した場合は7がセットされます。
バッチを動かした日から7日経過していれば、
そのファイルやフォルダは削除対象ということです。

ページ新規作成

新しいページはこちらから投稿できます。

TOP