VBS/作成日付が古いファイルを削除する のバックアップ(No.1)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- VBS/作成日付が古いファイルを削除する へ行く。
- 1 (2011-08-15 (月) 16:43:54)
- 2 (2011-12-27 (火) 20:58:14)
- 3 (2015-03-23 (月) 16:49:09)
- 4 (2015-04-10 (金) 08:57:13)
指定されたフォルダ以下にある、フォルダやファイルの作成日を見て、規定の日付より古いモノを削除する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日経過していれば、
そのファイルやフォルダは削除対象ということです。