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