deleteOldFile.wsf

Last-modified: 2014-08-16 (土) 12:41:50 (1992d)

10日以上前のファイルを削除

本スクリプトと同フォルダにある10日以上前のファイルを全削除します。

TV録画ファイルが保存されるフォルダに入れられることを意識しています。

deleteOldFile?.wsf

<JOB id="deleteOldFile">
<SCRIPT language="JScript">

var fso = WScript.CreateObject("Scripting.FileSystemObject");

var objFolder = fso.GetFolder(".\\");

var strOut = "";

var fullFiles = new Enumerator(objFolder.Files);

var intTimeStamp = new Date().getTime();
intTimeStamp -= 10 * 24 * 60 * 60 * 1000; //10日前のスタンプ

var aryFiles = new Array();


for (;!fullFiles.atEnd();fullFiles.moveNext()) {
	f = fullFiles.item();
	d = new Date(f.DateLastModified);
	if(f.Name.match(/\.wsf/)) continue; //wsfファイルならキャンセル
	if(d.getTime() > intTimeStamp) continue; //指定日付以降ならキャンセル
	
	strOut += d.getFullYear()+"."+
	((d.getMonth()+1)>9?d.getMonth()+1:"0"+(d.getMonth()+1))+"."+
	(d.getDate()>9?d.getDate():"0"+d.getDate())+" "+ f.Name+"\n";
	
	aryFiles.push(f.Name);
}

var wsh = WScript.CreateObject("WScript.Shell");


if(!aryFiles.length){
	WScript.Echo("削除対象ファイルはありません");
	WScript.Quit();
}

switch(wsh.popup(strOut+"\n以上のファイルを削除してよろしいですか?",30,"ファイル削除確認",33)){
case 1:
	//WScript.Echo("削除処理")
	
	for(i in aryFiles){
		fso.DeleteFile(aryFiles[i]);
	}
	break;
}

</SCRIPT>
</JOB>